From: Yu Watanabe Date: Tue, 18 Jul 2017 14:30:52 +0000 (+0900) Subject: core/manager: fix memory leak (#6400) X-Git-Tag: v235~316 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=35aba85a73c5872f18400bcbff930c9822f53771;p=thirdparty%2Fsystemd.git core/manager: fix memory leak (#6400) This fixes the memory leak introduced by 3536f49e8fa281539798a7bc5004d73302f39673, which forgot to free the prefixes in the manager. Fixes #6398. --- diff --git a/src/core/manager.c b/src/core/manager.c index a737ab07540..63893243913 100644 --- a/src/core/manager.c +++ b/src/core/manager.c @@ -1112,6 +1112,7 @@ static void manager_clear_jobs_and_units(Manager *m) { Manager* manager_free(Manager *m) { UnitType c; int i; + ExecDirectoryType dt; if (!m) return NULL; @@ -1184,6 +1185,9 @@ Manager* manager_free(Manager *m) { hashmap_free(m->uid_refs); hashmap_free(m->gid_refs); + for (dt = 0; dt < _EXEC_DIRECTORY_MAX; dt++) + m->prefix[dt] = mfree(m->prefix[dt]); + return mfree(m); }