diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2008-05-24 21:03:53 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2008-05-24 21:03:53 +0000 |
commit | 69dc3253972cbf6169abcaaef5fc7bc787a40075 (patch) | |
tree | 6eb123b8d15a7d31592d06d02707f7c862fcda65 | |
parent | bd23fbbd0a0491e00bac89fc30f31972525d95bb (diff) | |
download | busybox-w32-69dc3253972cbf6169abcaaef5fc7bc787a40075.tar.gz busybox-w32-69dc3253972cbf6169abcaaef5fc7bc787a40075.tar.bz2 busybox-w32-69dc3253972cbf6169abcaaef5fc7bc787a40075.zip |
syslogd: do not error out on missing files to rotate. closes bug 3404.
-rw-r--r-- | sysklogd/syslogd.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c index f8fc51780..1b8d718f4 100644 --- a/sysklogd/syslogd.c +++ b/sysklogd/syslogd.c | |||
@@ -347,10 +347,11 @@ static void log_locally(time_t now, char *msg) | |||
347 | sprintf(newFile, "%s.%d", G.logFilePath, i); | 347 | sprintf(newFile, "%s.%d", G.logFilePath, i); |
348 | if (i == 0) break; | 348 | if (i == 0) break; |
349 | sprintf(oldFile, "%s.%d", G.logFilePath, --i); | 349 | sprintf(oldFile, "%s.%d", G.logFilePath, --i); |
350 | xrename(oldFile, newFile); | 350 | /* ignore errors - file might be missing */ |
351 | rename(oldFile, newFile); | ||
351 | } | 352 | } |
352 | /* newFile == "f.0" now */ | 353 | /* newFile == "f.0" now */ |
353 | xrename(G.logFilePath, newFile); | 354 | rename(G.logFilePath, newFile); |
354 | fl.l_type = F_UNLCK; | 355 | fl.l_type = F_UNLCK; |
355 | fcntl(G.logFD, F_SETLKW, &fl); | 356 | fcntl(G.logFD, F_SETLKW, &fl); |
356 | close(G.logFD); | 357 | close(G.logFD); |