let log file =
let dir = Filename.dirname file in
let f = Filename.basename file in
let temp_file = Filename.temp_file "ocamlcvs" "log" in
let com = Printf.sprintf "cd %s ; cvs log %s > %s"
(Filename.quote dir)
f
temp_file
in
let n = Sys.command com in
if n = 0 then
(
let s = input_file_as_string temp_file in
delete_file temp_file ;
s
)
else
(
delete_file temp_file ;
raise (Ocvs_types.CvsFailure (Ocvs_messages.error_exec com))
)