X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fjournal%2Fjournald.c;h=3e7581815b562d849ea2698a605f501d0befa990;hp=d8cfa66b75dfb10e7bb51e2927a25386e2eda867;hb=4a299a7ad547becb70e8271eaf8cdc27e8e6836a;hpb=4a92baf3fa97c73f04438b5814db58783f920b32 diff --git a/src/journal/journald.c b/src/journal/journald.c index d8cfa66b7..3e7581815 100644 --- a/src/journal/journald.c +++ b/src/journal/journald.c @@ -478,6 +478,10 @@ static void write_to_journal(Server *s, uid_t uid, struct iovec *iovec, unsigned server_rotate(s); server_vacuum(s); vacuumed = true; + + f = find_journal(s, uid); + if (!f) + return; } for (;;) { @@ -513,6 +517,10 @@ static void write_to_journal(Server *s, uid_t uid, struct iovec *iovec, unsigned server_vacuum(s); vacuumed = true; + f = find_journal(s, uid); + if (!f) + return; + log_info("Retrying write."); } } @@ -860,7 +868,8 @@ static void forward_syslog_iovec(Server *s, const struct iovec *iovec, unsigned return; } - log_debug("Failed to forward syslog message: %m"); + if (errno != ENOENT) + log_debug("Failed to forward syslog message: %m"); } static void forward_syslog_raw(Server *s, int priority, const char *buffer, struct ucred *ucred, struct timeval *tv) { @@ -2138,11 +2147,8 @@ finish: journal_file_close(s->runtime_journal); s->runtime_journal = NULL; - if (r >= 0) { - char path[] = "/run/log/journal/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; - sd_id128_to_string(machine, path + 17); - rm_rf(path, false, true, false); - } + if (r >= 0) + rm_rf("/run/log/journal", false, true, false); return r; }