X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=frontend.ml;h=ad36172c0087d9116c5087a2de2972ef4230e60d;hb=4eccf5deff6324957d0bf0799dee6decb8d5f05a;hp=43c2ffa1861383840c49bca8f4a66cea9824c0cf;hpb=16c8bb31dd971b7fab00dbb17a75bb08cee463c6;p=vsys.git diff --git a/frontend.ml b/frontend.ml index 43c2ffa..ad36172 100644 --- a/frontend.ml +++ b/frontend.ml @@ -46,11 +46,7 @@ object(this) end; with Unix.Unix_error(_,_,_) -> Unix.mkdir fqp perm; - Directfifowatcher.add_dir_watch fqp - - - - + Directfifowatcher.add_dir_watch fqp (** Functions corresponding to file deletion/directory removal *) @@ -65,7 +61,7 @@ object(this) Unix.unlink fqp_in; Unix.unlink fqp_out with _ -> - fprintf logfd "Hm. %s disappeared. Looks like slice %s shot itself in the foot\n" fqp (this#get_slice_name ());flush logfd + logprint "Hm. %s disappeared. Looks like slice %s shot itself in the foot\n" fqp (this#get_slice_name ()) method rmdir rp = match rp with Relpath(rel) -> @@ -74,24 +70,27 @@ object(this) try Unix.rmdir fqp with _ -> - fprintf logfd "Hm. %s disappeared or not empty. Looks like slice %s shot itself in the foot\n" fqp (this#get_slice_name ());flush logfd + logprint "Hm. %s disappeared or not empty. Looks like slice %s shot itself in the foot\n" fqp (this#get_slice_name ()) initializer - try - let s = Unix.stat root_dir in - if (s.st_kind<>S_DIR) then - begin - Unix.unlink root_dir; - Unix.mkdir root_dir 0o700 - end - else if (s.st_perm <> 0o700) then - begin - Unix.rmdir root_dir; - Unix.mkdir root_dir 0o700 - end; - with Unix.Unix_error(_,_,_) -> + ( + try + let s = Unix.stat root_dir in + if (s.st_kind<>S_DIR) then + begin + Unix.unlink root_dir; + Unix.mkdir root_dir 0o700 + end + else if (s.st_perm <> 0o700) then + begin + Unix.rmdir root_dir; + Unix.mkdir root_dir 0o700 + end; + with Unix.Unix_error(_,_,_) -> + begin try - Unix.mkdir root_dir 0o700; + Unix.mkdir root_dir 0o700; with _ -> (); - Directfifowatcher.add_dir_watch root_dir + end); + Directfifowatcher.add_dir_watch root_dir end