Function semanage_genhomedircon() adds fallback user and function setup_fallback_user() may add another one. But only one fallback user is freed. Make sure to free all fallback users in semanage_genhomedircon(). Signed-off-by: Jan Zarsky <jzarsky@xxxxxxxxxx> --- libsemanage/src/genhomedircon.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libsemanage/src/genhomedircon.c b/libsemanage/src/genhomedircon.c index 27a269ea..d09d82ff 100644 --- a/libsemanage/src/genhomedircon.c +++ b/libsemanage/src/genhomedircon.c @@ -1385,7 +1385,9 @@ done: if (out != NULL) fclose(out); - pop_user_entry(&(s.fallback)); + while (s.fallback) + pop_user_entry(&(s.fallback)); + ignore_free(); return retval; -- 2.14.3