chiark / gitweb /
journald: invoking fstatvfs() is now redundant in the vacuuming code
[elogind.git] / src / journal / coredump.c
index 22e1932e2ba5e27c1e30bb7564a1c2df846aa46e..6499fbdef8616696acdc1b610302c483fa324988 100644 (file)
@@ -129,12 +129,12 @@ static off_t arg_keep_free = (off_t) -1;
 static off_t arg_max_use = (off_t) -1;
 
 static int parse_config(void) {
+        int r;
 
         static const ConfigTableItem items[] = {
                 { "Coredump", "Storage",          config_parse_coredump_storage,     0, &arg_storage           },
                 { "Coredump", "Compression",      config_parse_coredump_compression, 0, &arg_compression       },
                 { "Coredump", "CompressionLevel", config_parse_unsigned,             0, &arg_compression_level },
-
                 { "Coredump", "ProcessSizeMax",   config_parse_iec_off,              0, &arg_process_size_max  },
                 { "Coredump", "ExternalSizeMax",  config_parse_iec_off,              0, &arg_external_size_max },
                 { "Coredump", "JournalSizeMax",   config_parse_iec_size,             0, &arg_journal_size_max  },
@@ -143,7 +143,7 @@ static int parse_config(void) {
                 {}
         };
 
-        return config_parse(
+        r = config_parse(
                         NULL,
                         "/etc/systemd/coredump.conf",
                         NULL,
@@ -160,6 +160,8 @@ static int parse_config(void) {
                 arg_compression_level = LZMA_PRESET_DEFAULT;
         }
 #endif
+
+        return r;
 }
 
 static int fix_acl(int fd, uid_t uid) {
@@ -270,7 +272,7 @@ static int maybe_remove_external_coredump(const char *filename, off_t size) {
         if (!filename)
                 return 1;
 
-        if (unlink(filename) < 0) {
+        if (unlink(filename) < 0 && errno != ENOENT) {
                 log_error("Failed to unlink %s: %m", filename);
                 return -errno;
         }