summaryrefslogtreecommitdiff
path: root/zic.c
diff options
context:
space:
mode:
authorStuart Bishop <stuart@stuartbishop.net>2022-10-02 15:50:54 +1100
committerStuart Bishop <stuart@stuartbishop.net>2022-10-02 15:50:54 +1100
commit8eeefc360913ce56f8759c33b31e00542a0d3078 (patch)
treedb6cab6439dfaafd597bb8dfb12048408272a6dc /zic.c
parent301a880b1dd96605a98374576b0e210994a69f2d (diff)
downloadpytz-git-8eeefc360913ce56f8759c33b31e00542a0d3078.tar.gz
Squashed 'tz/' changes from b61a7acb4..82693eb52
0fc8f915a Release 2022d 43d32e3a6 tzselect.ksh: mention nawk (the one true awk) 2d49828e3 * asia: Add Palestine URL (thanks to Heba Hamad). 1a0e30a84 Tweak expression of Palestine transition b6e732290 Fix NEWS typo in previous change c42d108da Palestine transitions are now Saturdays at 02:00 92e33b2fb backzone: Uzhhorod comment fix (thanks to Garrett Wollman) d25f00b73 * europe: Comment fix (thanks to Philip Paeps). 2ea205765 Fix commentary in previous change 4dffd914c Simplify three Ukraine zones to one 54e8becfa Additional sourcing for Crimea 2014 switch a339d366d * southamerica: Add decree (thanks to Eduardo Romero Urra). aca1a7057 Fix some post-1970 PACKRATLIST glitches ce4d77644 Release 2022c 747f4a0e1 Spelling/capitalization fixes 4307b3a9d Update some documentation and commentary aa7019f99 Prefer " to ' in HTML attributes c9ba895d3 Remove zoneinfo2tdf.pl e5f99199f Improve tzselect behavior for Turkey etc. 0b9b27e60 Fix bug with 'zic -d /a/b/c' if /a is unwriteable d7f86ac32 Port .txt generation to macOS e8171130f Work around macOS awk bug git-subtree-dir: tz git-subtree-split: 82693eb525a29a10ec95e9fddf31cb683b124d32
Diffstat (limited to 'zic.c')
-rw-r--r--zic.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/zic.c b/zic.c
index a29f679..ff04793 100644
--- a/zic.c
+++ b/zic.c
@@ -3670,9 +3670,14 @@ mkdirs(char const *argname, bool ancestors)
some other process might have made the directory
in the meantime. Likewise for ENOSYS, because
Solaris 10 mkdir fails with ENOSYS if the
- directory is an automounted mount point. */
+ directory is an automounted mount point.
+ Likewise for EACCES, since mkdir can fail
+ with EACCES merely because the parent directory
+ is unwritable. Likewise for most other error
+ numbers. */
int err = errno;
- if (err != EEXIST && err != ENOSYS) {
+ if (err == ELOOP || err == ENAMETOOLONG
+ || err == ENOENT || err == ENOTDIR) {
error(_("%s: Can't create directory %s: %s"),
progname, name, strerror(err));
exit(EXIT_FAILURE);