]> matita.cs.unibo.it Git - helm.git/blobdiff - daemons/http_getter/main.ml
Instead of closing the socket to avoid persistent connections (a bugged
[helm.git] / daemons / http_getter / main.ml
index 572e9de1b932419203400a630186111002fec218..199a8b463f5920e66eaee3ff8681b12a1b494e73 100644 (file)
@@ -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,11 +334,6 @@ 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 = [ ]
@@ -354,6 +349,7 @@ let main () =
   let d_spec = Http_daemon.daemon_spec
      ~mode:`Thread ~timeout:(Some 600) 
      ~port:(Lazy.force Http_getter_env.port)
+     ~auto_close:true
      ~callback:callback ()
   in
   try