diff --git a/src/logging/writers/ascii/Ascii.cc b/src/logging/writers/ascii/Ascii.cc index fd73b4a9c2..f6f6c66e0e 100644 --- a/src/logging/writers/ascii/Ascii.cc +++ b/src/logging/writers/ascii/Ascii.cc @@ -122,10 +122,14 @@ TEST_CASE("writers.ascii prefix_basename_with") static std::optional parse_shadow_log(const std::string& fname) { auto sfname = prefix_basename_with(fname, shadow_file_prefix); + string default_ext = "." + Ascii::LogExt(); + if ( BifConst::LogAscii::gzip_level > 0 ) + default_ext += ".gz"; LeftoverLog rval = {}; rval.filename = fname; rval.shadow_filename = std::move(sfname); + rval.extension = default_ext; auto sf_stream = fopen(rval.shadow_filename.data(), "r"); @@ -181,14 +185,16 @@ static std::optional parse_shadow_log(const std::string& fname) if ( sf_lines.size() < 2 ) { - rval.error = util::fmt("Found leftover log, '%s', but the associated shadow " - " file, '%s', required to process it is invalid", - rval.filename.data(), rval.shadow_filename.data()); - return rval; + reporter->Warning("Found leftover log, '%s', but the associated shadow " + " file, '%s', required to process it is invalid: using default " + " for extension (%s) and post_proc_func", + rval.filename.data(), rval.shadow_filename.data(), default_ext.data()); + } + else + { + rval.extension = sf_lines[0]; + rval.post_proc_func = sf_lines[1]; } - - rval.extension = sf_lines[0]; - rval.post_proc_func = sf_lines[1]; struct stat st;