From a57c9865f803679ea3d7f7e77f53492dda12256b Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Mon, 18 Feb 2019 12:35:09 +0100 Subject: libmount: (tabdiff) use list_add_tail() in more robust way Signed-off-by: Karel Zak --- libmount/src/context_mount.c | 3 +++ libmount/src/tab_diff.c | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'libmount/src') diff --git a/libmount/src/context_mount.c b/libmount/src/context_mount.c index 307da3c5c..58224088a 100644 --- a/libmount/src/context_mount.c +++ b/libmount/src/context_mount.c @@ -60,6 +60,9 @@ static int mnt_context_append_additional_mount(struct libmnt_context *cxt, assert(cxt); assert(ad); + if (!list_empty(&ad->mounts)) + return -EINVAL; + DBG(CXT, ul_debugobj(cxt, "mount: add additional flag: 0x%08lx", ad->mountflags)); diff --git a/libmount/src/tab_diff.c b/libmount/src/tab_diff.c index 70440bf8b..fdb1ef5c2 100644 --- a/libmount/src/tab_diff.c +++ b/libmount/src/tab_diff.c @@ -136,7 +136,7 @@ static int tabdiff_reset(struct libmnt_tabdiff *df) struct tabdiff_entry *de = list_entry(df->changes.next, struct tabdiff_entry, changes); - list_del(&de->changes); + list_del_init(&de->changes); list_add_tail(&de->changes, &df->unused); mnt_unref_fs(de->new_fs); -- cgit v1.2.3-55-g7522