From ce4fd2c6d5a85bfd92269251c21e0a79360fbebd Mon Sep 17 00:00:00 2001 From: Ales Kozumplik Date: Tue, 23 Sep 2014 14:19:22 +0200 Subject: [PATCH] repo_rpmdb's freestate() can free rootdir only after closedbenv() finishes. Because serialize_dbenv_ops() still uses rootdir. --- ext/repo_rpmdb.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ext/repo_rpmdb.c b/ext/repo_rpmdb.c index c4ad78fa..b4541c39 100644 --- a/ext/repo_rpmdb.c +++ b/ext/repo_rpmdb.c @@ -1414,12 +1414,12 @@ freestate(struct rpmdbstate *state) /* close down */ if (!state) return; - if (state->rootdir) - solv_free(state->rootdir); if (state->db) state->db->close(state->db, 0); if (state->dbenv) closedbenv(state); + if (state->rootdir) + solv_free(state->rootdir); solv_free(state->rpmhead); } -- 2.47.2