From ff62fc46b4c718e6ad987cad1c95ecabaec7f3af Mon Sep 17 00:00:00 2001 From: Davidlohr Bueso Date: Sat, 6 Aug 2011 20:10:26 -0400 Subject: libmount: fix undefined sources The path resolving function breaks when handling undefined sources ("none") used by pseudo-filesystems. The assertion is causing the samples/mount program to abort: dave@offbook:~/projects/util-linux-good/libmount/samples$ ./mount /dev/sda3 on / type ext4 (rw,errors=remount-ro,commit=0) proc on /proc type proc (rw,noexec,nosuid,nodev) lt-mount: cache.c:464: mnt_resolve_path: Assertion `path' failed. Aborted /etc/mtab: /dev/sda3 / ext4 rw,errors=remount-ro,commit=0 0 0 proc /proc proc rw,noexec,nosuid,nodev 0 0 none /sys sysfs rw,noexec,nosuid,nodev 0 0 fusectl /sys/fs/fuse/connections fusectl rw 0 0 none /sys/kernel/debug debugfs rw 0 0 ... Instead of this assert on NULL we can simply return NULL and let mnt_pretty_path do the work. Signed-off-by: Davidlohr Bueso --- libmount/src/cache.c | 2 -- 1 file changed, 2 deletions(-) (limited to 'libmount/src') diff --git a/libmount/src/cache.c b/libmount/src/cache.c index 802d072e..41aa4fe2 100644 --- a/libmount/src/cache.c +++ b/libmount/src/cache.c @@ -461,8 +461,6 @@ char *mnt_resolve_path(const char *path, struct libmnt_cache *cache) char *key = NULL; char *value = NULL; - assert(path); - /*DBG(CACHE, mnt_debug_h(cache, "resolving path %s", path));*/ if (!path) -- cgit v1.2.3