* lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
authorPaul Eggert <eggert@cs.ucla.edu>
Sat, 16 Sep 2006 19:58:25 +0000 (19:58 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Sat, 16 Sep 2006 19:58:25 +0000 (19:58 +0000)
commiteeb96e1a6b5e0b31a4011d7d333999592c0bb2e9
tree147b0b74905d1e83b2efe83145de258782d2f0e0
parent5af1dfba7cbe99d263641b837a8b240e7b8f77bd
* lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
(dirchownmod): New arg FD.  All callers changed.
Use FD rather than opening the directory ourself, as opening is
now the caller's responsibility.
* lib/dirchownmod.h: Likewise.
* lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
hosts that require <sys/types.h> before <sys/stat.h>.  Include
fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
(test_dir): Remove.
(mkancesdirs): Return length of prefix of FILE that has already
been made, or -2 if there is a child doing the work.  Redo
algorithm so that it is O(N) rather than O(N**2).  Optimize away
".", and treat ".." specially since it might stray back into
already-created areas.  Use a subprocess if necessary.  New arg
WD; all users changed.  MAKE_DIR function should now return 1
if it creates a directory that is not readable.  Return -2 if
a child process is spun off.
* lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
Adjust signature to match code.
* lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
(make_dir_parents): Use a subprocess if necessary.  New arg WD;
all users changed.
* lib/savewd.c, lib/savewd.h: New files.
* m4/savewd.m4: New file.
* modules/mkancesdirs (Depends-on): Add fcntl.
* modules/savewd: New file.
* MODULES.html.sh (File system functions): Add savewd.
ChangeLog
MODULES.html.sh
lib/ChangeLog
lib/dirchownmod.c
lib/dirchownmod.h
lib/mkancesdirs.c
lib/mkancesdirs.h
lib/mkdir-p.c
lib/mkdir-p.h
m4/ChangeLog
modules/mkancesdirs