Patch from a FreeBSD contributor... -GAWollman ------- start of forwarded message (RFC 934 encapsulation) ------- Message-Id: <199612131138.WAA30698@godzilla.zeta.org.au> From: Bruce Evans <bde@zeta.org.au> To: wollman@freebsd.org Subject: fix for zic following obsolete links Date: Fri, 13 Dec 1996 22:38:49 +1100 zic made a mess of my /usr/share/zoneinfo by not snapping obsolete links (mostly in America/Indiana and Etc). Bruce diff -c2 src/usr.sbin/zic/zic.c~ src/usr.sbin/zic/zic.c *** src/usr.sbin/zic/zic.c~ Fri Jul 19 10:27:13 1996 - --- src/usr.sbin/zic/zic.c Thu Dec 12 21:22:16 1996 *************** *** 1424,1427 **** - --- 1424,1438 ---- (int) (strlen(directory) + 1 + strlen(name) + 1)); (void) sprintf(fullname, "%s/%s", directory, name); + + /* + * Remove old file, if any, to snap links. + */ + if (!itsdir(fullname) && remove(fullname) != 0 && errno != ENOENT) { + const char *e = strerror(errno); + (void) fprintf(stderr, _("%s: Can't remove %s: %s\n"), + progname, fullname, e); + (void) exit(EXIT_FAILURE); + } + if ((fp = fopen(fullname, "wb")) == NULL) { if (mkdirs(fullname) != 0) ------- end -------
participants (1)
-
Garrett Wollman