aboutsummaryrefslogtreecommitdiff
path: root/src/libstore/db.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstore/db.cc')
-rw-r--r--src/libstore/db.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/libstore/db.cc b/src/libstore/db.cc
index ca5d0582a..f378ef454 100644
--- a/src/libstore/db.cc
+++ b/src/libstore/db.cc
@@ -30,7 +30,12 @@ class DestroyDbEnv
DbEnv * dbenv;
public:
DestroyDbEnv(DbEnv * _dbenv) : dbenv(_dbenv) { }
- ~DestroyDbEnv() { if (dbenv) { dbenv->close(0); delete dbenv; } }
+ ~DestroyDbEnv() {
+ if (dbenv) {
+ if (dbenv->get_DB_ENV()) dbenv->close(0);
+ delete dbenv;
+ }
+ }
void release() { dbenv = 0; };
};