- let fqp = String.concat "/" [root_dir;rel] in
- try
- let s = Unix.stat fqp in
- if (s.st_kind<>S_DIR) then
- begin
- Unix.unlink fqp;
- Unix.mkdir fqp perm
- end
- else if (s.st_perm <> perm) then
- begin
- printf "Removing directory %s\n" fqp;
- flush Pervasives.stdout;
- Unix.rmdir fqp;
- Unix.mkdir fqp perm
- end
- with Unix.Unix_error(_,_,_) ->
- Unix.mkdir fqp perm
+ let fqp = String.concat "/" [root_dir;rel] in
+ try
+ let s = Unix.stat fqp in
+ if (s.st_kind<>S_DIR) then
+ begin
+ Unix.unlink fqp;
+ Unix.mkdir fqp perm
+ end
+ else if (s.st_perm <> perm) then
+ begin
+ Unix.rmdir fqp;
+ Unix.mkdir fqp perm
+ end;
+ with Unix.Unix_error(_,_,_) ->
+ Unix.mkdir fqp perm;
+ Directfifowatcher.add_dir_watch fqp
+
+
+
+