summaryrefslogtreecommitdiff
path: root/c_src/permdb.c
diff options
context:
space:
mode:
Diffstat (limited to 'c_src/permdb.c')
-rw-r--r--c_src/permdb.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/c_src/permdb.c b/c_src/permdb.c
index 0ce74b6..b5784d5 100644
--- a/c_src/permdb.c
+++ b/c_src/permdb.c
@@ -586,8 +586,10 @@ permdb_alloc(const char *dbpath, int lock)
}
if (datafile_verify_file(state->datafile) < 0) {
warnx("data file verification failed: %s", dbpath);
- permdb_free(state);
- return NULL;
+ if (state->write_enabled) {
+ permdb_free(state);
+ return NULL;
+ }
}
if (indexfile_verify_file(state->indexfile) < 0) {
if (!state->write_enabled) {