Log of /coreutils/lib/makepath.c
Parent Directory
| Revision Log
Revision
1.63
Thu Jun 2 05:06:56 2005 UTC
(18 years, 11 months ago)
by
eggert
Branch:
MAIN
CVS Tags:
HEAD
Changes since
1.62: +0 -0 lines
FILE REMOVED
Use "file name" when talking about file names, instead of "filename"
or "path", as per the GNU coding standards. As part of this,
rename makepath.c to mkdir-p.c, and path-concat.c to filenamecat.c,
and likewise for the .h files.
Revision
1.61 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Thu May 5 07:59:48 2005 UTC
(18 years, 11 months ago)
by
eggert
Branch:
MAIN
Changes since
1.60: +10 -4 lines
Diff to
previous 1.60
(make_path): chdir to "//", not "/", if the file name
starts with exactly two slashes.
Revision
1.60 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Fri Jul 30 20:29:01 2004 UTC
(19 years, 9 months ago)
by
eggert
Branch:
MAIN
CVS Tags:
COREUTILS-5_3_0
Changes since
1.59: +41 -48 lines
Diff to
previous 1.59
(make_path, make_dir): Use bool, not int, since we're not setting errno.
Use mode_t for modes, not int. All uses changed.
(errno): Remove decl; no longer needed since we assume C89.
Revision
1.59 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sat Jun 19 12:26:53 2004 UTC
(19 years, 10 months ago)
by
meyering
Branch:
MAIN
Changes since
1.58: +4 -38 lines
Diff to
previous 1.58
Remove all S_IS* and S_IF* definitions.
Instead, just include "stat-macros.h".
Revision
1.56 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Wed Jun 18 08:15:14 2003 UTC
(20 years, 10 months ago)
by
meyering
Branch:
MAIN
Changes since
1.55: +4 -15 lines
Diff to
previous 1.55
Merge in change from gnulib.
Remove block of alloca-related code in favor
of an unconditional `#include <alloca.h>'.
Revision
1.49 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sun Mar 10 22:15:53 2002 UTC
(22 years, 1 month ago)
by
meyering
Branch:
MAIN
CVS Tags:
COREUTILS-4_5_1,
FILEUTILS-4_1_10,
FILEUTILS-4_1_11,
FILEUTILS-4_1_7,
FILEUTILS-4_1_8,
FILEUTILS-4_1_9,
SH-UTILS-2_0_12,
SH-UTILS-2_0_13,
SH-UTILS-2_0_14,
SH-UTILS-2_0_15,
TEXTUTILS-2_0_22,
TEXTUTILS-2_1
Changes since
1.48: +2 -2 lines
Diff to
previous 1.48
(make_path): Remove a comma from a diagnostic.
Revision
1.48 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sat May 12 10:05:15 2001 UTC
(22 years, 11 months ago)
by
meyering
Branch:
MAIN
CVS Tags:
FILEUTILS-4_1_1,
FILEUTILS-4_1_2,
FILEUTILS-4_1_3,
FILEUTILS-4_1_4,
FILEUTILS-4_1_5,
FILEUTILS-4_1_6,
TEXTUTILS-2_0_15,
TEXTUTILS-2_0_16,
TEXTUTILS-2_0_17,
TEXTUTILS-2_0_18,
TEXTUTILS-2_0_19,
TEXTUTILS-2_0_20,
TEXTUTILS-2_0_21
Changes since
1.47: +1 -3 lines
Diff to
previous 1.47
Include dirname.h.
(strip_trailing_slashes): Remove decl; now in dirname.h.
Revision
1.47 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sun Nov 5 15:04:17 2000 UTC
(23 years, 5 months ago)
by
meyering
Branch:
MAIN
CVS Tags:
FILEUTILS-4_0_31,
FILEUTILS-4_0_32,
FILEUTILS-4_0_33,
FILEUTILS-4_0_34,
FILEUTILS-4_0_35,
FILEUTILS-4_0_36,
FILEUTILS-4_0_37,
FILEUTILS-4_0_38,
FILEUTILS-4_0_39,
FILEUTILS-4_0_40,
FILEUTILS-4_0_41,
FILEUTILS-4_0_42,
FILEUTILS-4_0_43,
FILEUTILS-4_0_44,
FILEUTILS-4_0_45,
FILEUTILS-4_1,
TEXTUTILS-2_0_10,
TEXTUTILS-2_0_11,
TEXTUTILS-2_0_12,
TEXTUTILS-2_0_13,
TEXTUTILS-2_0_14,
TEXTUTILS-2_0_9
Changes since
1.46: +3 -3 lines
Diff to
previous 1.46
(make_dir): Remove `static' attribute.
Tweak a comment.
Revision
1.46 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sun Jul 30 16:24:51 2000 UTC
(23 years, 9 months ago)
by
meyering
Branch:
MAIN
CVS Tags:
FILEUTILS-4_0_27,
FILEUTILS-4_0_28,
FILEUTILS-4_0_29,
FILEUTILS-4_0_30,
FILEUTILS-4_0y,
FILEUTILS-4_0z,
SH-UTILS-2_0_11,
TEXTUTILS-2_0_8,
TEXTUTILS-2_0g
Changes since
1.45: +1 -1 lines
Diff to
previous 1.45
(make_path): Quote the other instance, too.
Revision
1.45 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sat Jul 15 13:27:30 2000 UTC
(23 years, 9 months ago)
by
meyering
Branch:
MAIN
CVS Tags:
FILEUTILS-4_0x
Changes since
1.44: +19 -11 lines
Diff to
previous 1.44
Include quote.h.
(make_path): Convert "`%s'" in format strings to "%s", and wrap each
corresponding argument in a `quote (...)' call.
Give better diagnostics.
Revision
1.42 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Wed Apr 26 12:36:43 2000 UTC
(24 years ago)
by
meyering
Branch:
MAIN
Changes since
1.41: +16 -8 lines
Diff to
previous 1.41
(S_IRWXUGO): Define.
(make_path): Always perform explicit chmod if MODE specifies any
of the `special' permission bits.
Revision
1.41 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Mon Dec 13 07:30:57 1999 UTC
(24 years, 4 months ago)
by
meyering
Branch:
MAIN
CVS Tags:
FILEUTILS-4_0l,
FILEUTILS-4_0m,
FILEUTILS-4_0n,
FILEUTILS-4_0o,
FILEUTILS-4_0p,
FILEUTILS-4_0q,
SH-UTILS-2_0e,
SH-UTILS-2_0f,
SH-UTILS-2_0g,
TEXTUTILS-2_0d,
TEXTUTILS-2_0e
Changes since
1.40: +1 -1 lines
Diff to
previous 1.40
(make_path): Consistently use error to output
the verbose, `created directory ...' messages.
Reported by Bernhard Rosenkraenzer.
Revision
1.39 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Thu May 6 02:10:34 1999 UTC
(24 years, 11 months ago)
by
meyering
Branch:
MAIN
CVS Tags:
FILEUTILS-4_0h,
FILEUTILS-4_0i
Changes since
1.38: +2 -1 lines
Diff to
previous 1.38
(make_dir): When reporting a mkdir failure and the
target cannot be `stat'ed, use the errno from the failed mkdir call,
not the one from the stat call. Before this change, running
`mkdir -p /no-dir/no-dir' as an unprivileged user would wrongly
elicit `No such file or directory' instead of `Permission denied'.
Revision
1.38 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Wed May 5 03:05:11 1999 UTC
(24 years, 11 months ago)
by
meyering
Branch:
MAIN
Changes since
1.37: +3 -1 lines
Diff to
previous 1.37
Include makepath.h libintl.h, not after it.
Otherwise, we'd get the wrong definition of PARAMS from libintl.h.
(The method of defining PARAMS in libintl.h doesn't check PROTOTYPES,
which is necessary on Irix4 since cc doesn't define __STDC__.)
From Kaveh Ghazi.
Revision
1.37 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Mon Apr 26 13:13:00 1999 UTC
(25 years ago)
by
meyering
Branch:
MAIN
Changes since
1.36: +21 -5 lines
Diff to
previous 1.36
(make_path): Use proper mode_t types and macros.
Don't assume the traditional Unix values for mode bits.
(S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRWXU): Define if not defined.
Revision
1.35 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sat Jan 2 05:16:57 1999 UTC
(25 years, 4 months ago)
by
meyering
Branch:
MAIN
Changes since
1.34: +60 -35 lines
Diff to
previous 1.34
(make_dir): New function, factored out of make_path.
(make_path): Use make_dir rather than open-coding it twice.
This effectively reverses the order of the latter pair of stat/mkdir
calls and fixes a race condition bug whereby one of two concurrent
`mkdir -p' processes could fail with EEXIST.
Revision
1.34 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Wed Feb 11 22:17:38 1998 UTC
(26 years, 2 months ago)
by
meyering
Branch:
MAIN
CVS Tags:
FILEUTILS-3_16m,
FILEUTILS-3_16n,
FILEUTILS-3_16o,
FILEUTILS-3_16p,
FILEUTILS-3_16q,
FILEUTILS-3_16r,
FILEUTILS-3_16s,
FILEUTILS-3_16t,
FILEUTILS-3_16u,
FILEUTILS-3_16v,
FILEUTILS-3_16w,
FILEUTILS-3_16x,
FILEUTILS-3_16z,
FILEUTILS-4_0,
FILEUTILS-4_0-b2,
FILEUTILS-4_0-b3,
FILEUTILS-4_0-b4,
FILEUTILS-4_0-b5,
FILEUTILS-4_0-b6,
FILEUTILS-4_0-b7,
FILEUTILS-4_0-pre1,
FILEUTILS-4_1-b1
Branch point for:
fu-4_0
Changes since
1.33: +8 -0 lines
Diff to
previous 1.33
Add my comment from ChangeLog entry for gkm's change.
Revision
1.31 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Fri Jan 2 23:15:39 1998 UTC
(26 years, 4 months ago)
by
meyering
Branch:
MAIN
CVS Tags:
FILEUTILS-3_16i,
FILEUTILS-3_16j
Changes since
1.30: +15 -4 lines
Diff to
previous 1.30
(make_path): Try to change ownership only if we've just created the
directory. Fix latent bug (s/&&/||/ in two places -- also, note that
it could not be exercised via install or mkdir) whereby chown would
not be invoked when only one of owner/group is not -1.
Revision
1.28 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Mon Oct 6 13:03:29 1997 UTC
(26 years, 6 months ago)
by
meyering
Branch:
MAIN
Changes since
1.27: +4 -1 lines
Diff to
previous 1.27
(make_path): Print message IFF the directory was
just created and the format string is non-NULL.
Revision
1.27 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Wed Jul 9 18:02:07 1997 UTC
(26 years, 9 months ago)
by
meyering
Branch:
MAIN
Changes since
1.26: +17 -15 lines
Diff to
previous 1.26
(make_path): Chdir to `/' before starting if necessary.
Call save_cwd before while loop rather than from first iteration inside it.
Revision
1.25 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Tue Jul 1 11:50:39 1997 UTC
(26 years, 10 months ago)
by
meyering
Branch:
MAIN
Changes since
1.24: +28 -26 lines
Diff to
previous 1.24
(make_path): Reorder stat-then-mkdir-if-missing
calls so that mkdir is called first. Before make_path would first
`stat' a directory, then call mkdir if it didn't exist. But if
some other process created the directory between the stat & mkdir,
the mkdir would fail with EEXIST. Diagnosis and suggestion from
Greg McGary.
Revision
1.24 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sun Jun 15 13:34:47 1997 UTC
(26 years, 10 months ago)
by
meyering
Branch:
MAIN
Changes since
1.23: +94 -26 lines
Diff to
previous 1.23
Rewrite using save-cwd.c and chdir to remove quadratic component of complexity.
Before, it processed O(n^2) directory name components via stat and mkdir.
Now it's O(n). This makes mkdir -p a lot more efficient when creating
directories with very many components. On a Linux 2.0.30 ext2fs filesystem
this command: mkdir -p `perl -e 'print "a/" x 500'` now runs in 0.77 seconds
(user+sys). Contrast that with the 9.5(!) seconds it took before.
Revision
1.19 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Fri May 19 15:23:21 1995 UTC
(28 years, 11 months ago)
by
meyering
Branch:
MAIN
CVS Tags:
FILEUTILS-3_12a,
FILEUTILS-3_12f,
FILEUTILS-3_12g,
FILEUTILS-3_12j,
FILEUTILS-3_12l,
FILEUTILS-3_12m,
FILEUTILS-3_12o,
FILEUTILS-3_12p,
FILEUTILS-3_12q,
FILEUTILS-3_12r,
FILEUTILS-3_12s,
FILEUTILS-3_13
Changes since
1.18: +1 -1 lines
Diff to
previous 1.18
No longer include safe-l?stat.h.
Revision
1.18 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sat May 13 13:30:10 1995 UTC
(28 years, 11 months ago)
by
meyering
Branch:
MAIN
Changes since
1.17: +12 -12 lines
Diff to
previous 1.17
(make_path): Use stat, not SAFE_STAT.
Use strchr, not index. Adjust defines accordingly.
Revision
1.16 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Fri Nov 4 06:05:34 1994 UTC
(29 years, 6 months ago)
by
meyering
Branch:
MAIN
Changes since
1.15: +36 -26 lines
Diff to
previous 1.15
Include makepath.h.
Add an argument: PRESERVE_EXISTING.
Declare char* arguments const.
Revision
1.1.1.11 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
(vendor branch)
Sun Oct 2 05:35:36 1994 UTC
(29 years, 7 months ago)
by
meyering
Branch:
FILEUTILS
CVS Tags:
FILEUTILS-3_9h,
FILEUTILS-3_9i,
FILEUTILS-3_9j,
FILEUTILS-3_9k,
FILEUTILS-3_9l,
FILEUTILS-3_9m,
FILEUTILS-3_9n,
FILEUTILS-3_9o,
FILEUTILS-3_9p,
FILEUTILS-3_9q,
FILEUTILS-3_9s,
FILEUTILS-3_9t,
FILEUTILS-3_9t1,
FILEUTILS-3_9t2,
FILEUTILS-3_9t3,
FILEUTILS-3_9u
Changes since
1.1.1.10: +2 -11 lines
Diff to
previous 1.1.1.10
GNU file utilities
Revision
1.12 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Sat Jul 30 13:13:54 1994 UTC
(29 years, 9 months ago)
by
meyering
Branch:
MAIN
Changes since
1.11: +4 -3 lines
Diff to
previous 1.11
Use SAFE_STAT instead of stat to avoid unnecessary failure
on systems for which stat can return EINTR.
Revision
1.1.1.9 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
(vendor branch)
Tue Oct 12 20:13:19 1993 UTC
(30 years, 6 months ago)
by
meyering
Branch:
FILEUTILS
CVS Tags:
FILEUTILS-3_8_4c,
FILEUTILS-3_8_4d,
FILEUTILS-3_8_4e,
FILEUTILS-3_8_4f,
FILEUTILS-3_8_4g,
FILEUTILS-3_8_4h,
FILEUTILS-3_8_4k,
FILEUTILS-3_9,
FILEUTILS-3_9a,
FILEUTILS-3_9b,
FILEUTILS-3_9c,
FILEUTILS-3_9d
Changes since
1.1.1.8: +2 -2 lines
Diff to
previous 1.1.1.8
GNU file utilities
This form allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
select a symbolic revision name using the selection box, or choose
'Use Text Field' and enter a numeric revision.