summaryrefslogtreecommitdiff
path: root/sysklogd
diff options
context:
space:
mode:
Diffstat (limited to 'sysklogd')
-rw-r--r--sysklogd/syslogd.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c
index 371b5588f..5f3ac2c2f 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);