lmdb: Fix potential null deref (coverity).

Change-Id: Icc5cadfddecbea81c835d84e4ada785e34638514
This commit is contained in:
Howard Chu 2015-01-13 18:47:18 +00:00 committed by Leo Yuriev
parent eb885ab910
commit e7a0c74c09

10
mdb.c
View File

@ -5185,13 +5185,15 @@ mdb_env_close0(MDB_env *env, int excl)
return;
/* Doing this here since me_dbxs may not exist during mdb_env_close */
for (i = env->me_maxdbs; --i > MAIN_DBI; )
free(env->me_dbxs[i].md_name.mv_data);
if (env->me_dbxs) {
for (i = env->me_maxdbs; --i > MAIN_DBI; )
free(env->me_dbxs[i].md_name.mv_data);
free(env->me_dbxs);
}
free(env->me_pbuf);
free(env->me_dbiseqs);
free(env->me_dbflags);
free(env->me_dbxs);
free(env->me_path);
free(env->me_dirty_list);
if (env->me_txn0)
@ -7990,7 +7992,7 @@ mdb_node_move(MDB_cursor *csrc, MDB_cursor *cdst)
cdst->mc_ki[cdst->mc_top] = 0;
rc = mdb_update_key(cdst, &nullkey);
cdst->mc_ki[cdst->mc_top] = ix;
mdb_cassert(csrc, rc == MDB_SUCCESS);
mdb_cassert(cdst, rc == MDB_SUCCESS);
}
}