X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=helm%2Fsoftware%2Fdaemons%2Fhttp_getter%2Fmain.ml;fp=helm%2Fsoftware%2Fdaemons%2Fhttp_getter%2Fmain.ml;h=572e9de1b932419203400a630186111002fec218;hb=0eb918a6544a7ac45593e69b633fd42fd8a41b9b;hp=c200c161dbe931a2a6c04f719dae3b12f1cab3fe;hpb=43b1a4790cd6215742cfa0ab66ec01f3054a5a9c;p=helm.git diff --git a/helm/software/daemons/http_getter/main.ml b/helm/software/daemons/http_getter/main.ml index c200c161d..572e9de1b 100644 --- a/helm/software/daemons/http_getter/main.ml +++ b/helm/software/daemons/http_getter/main.ml @@ -263,7 +263,7 @@ let respond_xslt patch_xslt xslt_name outchan = (* thread action *) -let callback (req: Http_types.request) outchan = +let callback ((req: Http_types.request), outchan) = try Http_getter_logger.log ("Connection from " ^ req#clientAddr); Http_getter_logger.log ("Received request: " ^ req#uri); @@ -334,6 +334,11 @@ let callback (req: Http_types.request) outchan = log_failure msg; return_html_error ("uncaught_exception", msg) msg outchan) +let callback req outchan = + HExtlib.finally + (fun () -> try close_out outchan with Sys_error _ -> ()) + callback (req, outchan) + let batch_update = ref false let args = [ ]