Author: hhubner Date: Fri Feb 15 11:39:19 2008 New Revision: 2507
Modified: branches/trunk-reorg/bknr/web/src/web/handlers.lisp Log: Fixes for CXML compatibility. Create new random state for each request invocation (which is not good, but better than having all requests start with the same seed).
Modified: branches/trunk-reorg/bknr/web/src/web/handlers.lisp ============================================================================== --- branches/trunk-reorg/bknr/web/src/web/handlers.lisp (original) +++ branches/trunk-reorg/bknr/web/src/web/handlers.lisp Fri Feb 15 11:39:19 2008 @@ -223,7 +223,8 @@ (defmethod invoke-handler ((handler page-handler)) (let* ((*website* (page-handler-site handler)) (*req-var-hash* (or *req-var-hash* - (make-hash-table)))) + (make-hash-table))) + (*random-state* (make-random-state t))) (do-log-request) (unwind-protect (if (not (authorized-p handler)) @@ -446,8 +447,8 @@
(defmethod handle :around ((handler xml-handler)) (with-http-response (:content-type "text/xml") - (with-http-body () - (let ((sink (cxml:make-character-stream-sink *html-stream* :canonical t)) + (with-output-to-string (stream) + (let ((sink (cxml:make-character-stream-sink stream :canonical t)) (style-path (or (query-param "style") (xml-handler-style-path handler)))) (cxml:with-xml-output sink