aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--compat_mkdtemp.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/compat_mkdtemp.c b/compat_mkdtemp.c
index 296bfd42..c2edfcb1 100644
--- a/compat_mkdtemp.c
+++ b/compat_mkdtemp.c
@@ -1,6 +1,6 @@
-/* $Id: compat_mkdtemp.c,v 1.3 2020/06/15 01:37:15 schwarze Exp $ */
+/* $Id: compat_mkdtemp.c,v 1.4 2021/09/19 15:02:55 schwarze Exp $ */
/*
- * Copyright (c) 2015 Ingo Schwarze <schwarze@openbsd.org>
+ * Copyright (c) 2015, 2021 Ingo Schwarze <schwarze@openbsd.org>
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -36,16 +36,14 @@ mkdtemp(char *path)
start--;
for (tries = INT_MAX; tries; tries--) {
- if (mktemp(path) == NULL) {
- errno = EEXIST;
+ if (mktemp(path) == NULL)
return NULL;
- }
if (mkdir(path, S_IRUSR | S_IWUSR | S_IXUSR) == 0)
return path;
- if (errno != EEXIST)
- return NULL;
for (cp = start; *cp != '\0'; cp++)
*cp = 'X';
+ if (errno != EEXIST)
+ return NULL;
}
errno = EEXIST;
return NULL;