diff options
author | Rich Felker <dalias@aerifal.cx> | 2011-02-19 09:40:07 -0500 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2011-02-19 09:40:07 -0500 |
commit | 69ecbd0f3188be97f91cc0d6415836d23e88f7fc (patch) | |
tree | 0d74e8a311a2ec1a8d0be9fa0f09ac09004a448f /src/temp/mktemp.c | |
parent | 2e6239dd064d201c6e1b0f589bae9ff27949d2eb (diff) | |
download | musl-69ecbd0f3188be97f91cc0d6415836d23e88f7fc.tar.gz |
make mktemp match the historic behavior, and update functions that use it
the historic mktemp is supposed to blank the template string on
failure, rather than returning 0. just zero the first character so
that mkstemp and mkdtemp can still retry with O(1) space requirement.
Diffstat (limited to 'src/temp/mktemp.c')
-rw-r--r-- | src/temp/mktemp.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/temp/mktemp.c b/src/temp/mktemp.c index 1462a16c..1057651e 100644 --- a/src/temp/mktemp.c +++ b/src/temp/mktemp.c @@ -26,8 +26,9 @@ char *__mktemp(char *template) if (access(template, F_OK) < 0) return template; r = r * 1103515245 + 12345; } + *template = 0; errno = EEXIST; - return 0; + return template; } weak_alias(__mktemp, mktemp); |