X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fgetter%2Fhttp_getter_wget.ml;h=a6118c82c1cebf295b0e53f4405bbea55f7c4109;hb=68233b146502151bd84dc04e2ae3d49df6a7cd56;hp=3171e664feac4bd373dc8b1e415b3b6373216329;hpb=0d254219f4870d603ab3ecf5b0013a9a81e14314;p=helm.git diff --git a/helm/ocaml/getter/http_getter_wget.ml b/helm/ocaml/getter/http_getter_wget.ml index 3171e664f..a6118c82c 100644 --- a/helm/ocaml/getter/http_getter_wget.ml +++ b/helm/ocaml/getter/http_getter_wget.ml @@ -28,16 +28,21 @@ open Http_getter_types let send cmd = try ignore (Http_user_agent.get cmd) - with e -> raise (Http_client_error (cmd, Printexc.to_string e)) + with exn -> raise (Http_client_error (cmd, Printexc.to_string exn)) let get url = try Http_user_agent.get url - with e -> raise (Http_client_error (Printexc.to_string e, url)) + with exn -> raise (Http_client_error (Printexc.to_string exn, url)) let get_and_save url dest_filename = let out_channel = open_out dest_filename in - Http_user_agent.get_iter (output_string out_channel) url; + (try + Http_user_agent.get_iter (output_string out_channel) url; + with exn -> + close_out out_channel; + Sys.remove dest_filename; + raise (Http_client_error (Printexc.to_string exn, url))); close_out out_channel let get_and_save_to_tmp url =