]> matita.cs.unibo.it Git - helm.git/blobdiff - daemons/rdfly/rdfly.ml
snapshot for camlp5 v5
[helm.git] / daemons / rdfly / rdfly.ml
index 18c2e1587dfe0e3c007678b5590abb9b381b3c62..8dbb6b051c484a48101d68f590a3adeb18c87d75 100644 (file)
@@ -152,7 +152,7 @@ let password = get_option "rdfly.mysql_connection.password";;
 let user = get_option "rdfly.mysql_connection.user";;
 let daemonport = Helm_registry.get_int "rdfly.port";;
 
-let callback ((req: Http_types.request), ch) =
+let callback (req: Http_types.request) ch =
   try
     debug_print ("Connection from " ^ req#clientAddr) ;
     debug_print ("Received request: " ^ req#uri) ;
@@ -180,16 +180,13 @@ let callback ((req: Http_types.request), ch) =
   | exc ->
       return_html_error ("Uncaught exception: " ^ (Printexc.to_string exc)) ch
 
-let callback req ch =
-  HExtlib.finally
-    (fun () -> try close_out ch with Sys_error _ -> ())
-    callback (req, ch)
-
 let main () =
   Sys.catch_break true;
   try
-    Http_daemon.start'
-      ~timeout:(Some 600) ~port:daemonport callback
+    let d_spec =
+      Http_daemon.daemon_spec ~timeout:(Some 600) ~port:daemonport ~callback ~auto_close:true ()
+    in
+    Http_daemon.main d_spec
   with Sys.Break -> ()
 in