X-Git-Url: https://jfr.im/git/irc/evilnet/x3.git/blobdiff_plain/0f6fe38cf6a842e638aa35ac7641e1e792634e2c..3b7fa78b1de8f9ee8718cba3da3b2db522b70620:/src/recdb.c diff --git a/src/recdb.c b/src/recdb.c index 024bc9a..f42284c 100644 --- a/src/recdb.c +++ b/src/recdb.c @@ -93,7 +93,7 @@ typedef struct recdb_outfile { } RECDB_OUT; #ifdef HAVE_MMAP -static int mmap_error=0; +static int mmap_error; #endif #define EOL '\n' @@ -617,9 +617,13 @@ parse_database(const char *filename) if (fstat(fileno(recdb.f), &statinfo)) { log_module(MAIN_LOG, LOG_ERROR, "Unable to fstat database file '%s': %s", filename, strerror(errno)); + fclose(recdb.f); return NULL; } recdb.length = (size_t)statinfo.st_size; + if (recdb.length == 0) { + return alloc_database(); + } #ifdef HAVE_MMAP /* Try mmap */