[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: new module savewd, plus changes to mkdir-p
From: |
Ralf Wildenhues |
Subject: |
Re: new module savewd, plus changes to mkdir-p |
Date: |
Sun, 17 Sep 2006 13:11:40 +0200 |
User-agent: |
Mutt/1.5.13 (2006-08-11) |
Hello Paul,
* Paul Eggert wrote on Sat, Sep 16, 2006 at 10:00:27PM CEST:
> I installed this fix as part of updates to coreutils.
The file modules/savewd does not exist in the current CVS, neither
do lib/savewd.[ch], m4/savewd.m4.
Do I understand correctly that it was intended to have both save-cvd
and savewd, as they have different semantics?
Cheers,
Ralf
> 2006-09-15 Paul Eggert <address@hidden>
>
> * modules/mkancesdirs (Depends-on): Add fcntl.
> * modules/savewd: New file.
> * MODULES.html.sh (File system functions): Add savewd.
> * 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.
*snip*