diff --git a/db.c b/db.c
index d3da08a2d4b4dde10088b8ab191f707267d9e051..8e301c5bccae420a35da6a6d1b5fd8028e3d4b0b 100644
--- a/db.c
+++ b/db.c
@@ -122,8 +122,10 @@ int ast_db_deltree(const char *family, const char *keytree)
 	}
 	
 	ast_mutex_lock(&dblock);
-	if (dbinit()) 
+	if (dbinit()) {
+		ast_mutex_unlock(&dblock);
 		return -1;
+	}
 	
 	memset(&key, 0, sizeof(key));
 	memset(&data, 0, sizeof(data));