X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fgetter%2Fhttp_getter_misc.ml;h=c1f21512eb289b78305355071e3b949fa70fe2c9;hb=aca103d3c3d740efcc0bcc2932922cff77facb49;hp=289ebad9af9f22b477e5d6f8d25a7a57c1386b20;hpb=40df57df40c0e62b8c6dcf23818b7bad3e83c9cc;p=helm.git diff --git a/helm/ocaml/getter/http_getter_misc.ml b/helm/ocaml/getter/http_getter_misc.ml index 289ebad9a..c1f21512e 100644 --- a/helm/ocaml/getter/http_getter_misc.ml +++ b/helm/ocaml/getter/http_getter_misc.ml @@ -61,6 +61,19 @@ let fold_file f init fname = let iter_file f = fold_file (fun line _ -> f line) () +let iter_buf_size = 10240 + +let iter_file_data f fname = + let ic = open_in fname in + let buf = String.create iter_buf_size in + try + while true do + let bytes = input ic buf 0 iter_buf_size in + if bytes = 0 then raise End_of_file; + f (String.sub buf 0 bytes) + done + with End_of_file -> close_in ic + let hashtbl_sorted_fold f tbl init = let sorted_keys = List.sort compare (Hashtbl.fold (fun key _ keys -> key::keys) tbl []) @@ -163,7 +176,6 @@ let gunzip ?(keep = false) ?output fname = begin try let ic = Gzip.open_in_chan zic in - Http_getter_logger.log (sprintf "LUCA: OK" ); let oc = open_out output in let buf = String.create bufsiz in (try