diff options
-rw-r--r-- | libmount/src/context_umount.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libmount/src/context_umount.c b/libmount/src/context_umount.c index ee1a648bc..1be29f9ea 100644 --- a/libmount/src/context_umount.c +++ b/libmount/src/context_umount.c @@ -808,11 +808,14 @@ int mnt_context_next_umount(struct libmnt_context *cxt, if (!cxt || !fs || !itr) return -EINVAL; - mnt_context_get_mtab(cxt, &mtab); + rc = mnt_context_get_mtab(cxt, &mtab); cxt->mtab = NULL; /* do not reset mtab */ mnt_reset_context(cxt); cxt->mtab = mtab; + if (rc) + return rc; + do { rc = mnt_table_next_fs(mtab, itr, fs); if (rc != 0) |