From: Karel Zak Date: Mon, 12 Sep 2011 13:22:51 +0000 (+0200) Subject: libblkid: remove unnecessary position check from list_for_each_safe loops X-Git-Tag: v2.21-rc1~423 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b29a641219f647d389ae782f3d7a0cd8b1051bed;p=thirdparty%2Futil-linux.git libblkid: remove unnecessary position check from list_for_each_safe loops The position pointer is dereferenced before the check in the for() in the list_for_each_safe macro. Note that struct list_head should not contain NULL pointers. See INIT_LIST_HEAD() macro. Signed-off-by: Karel Zak --- diff --git a/libblkid/src/cache.c b/libblkid/src/cache.c index feec6ddfce..6ef22a103e 100644 --- a/libblkid/src/cache.c +++ b/libblkid/src/cache.c @@ -217,8 +217,6 @@ void blkid_gc_cache(blkid_cache cache) list_for_each_safe(p, pnext, &cache->bic_devs) { blkid_dev dev = list_entry(p, struct blkid_struct_dev, bid_devs); - if (!p) - break; if (stat(dev->bid_name, &st) < 0) { DBG(DEBUG_CACHE, printf("freeing %s\n", dev->bid_name)); diff --git a/libblkid/src/devname.c b/libblkid/src/devname.c index e1fc2c8499..f824a1795c 100644 --- a/libblkid/src/devname.c +++ b/libblkid/src/devname.c @@ -91,10 +91,7 @@ blkid_dev blkid_get_dev(blkid_cache cache, const char *devname, int flags) * it. */ list_for_each_safe(p, pnext, &cache->bic_devs) { - blkid_dev dev2; - if (!p) - break; - dev2 = list_entry(p, struct blkid_struct_dev, bid_devs); + blkid_dev dev2 = list_entry(p, struct blkid_struct_dev, bid_devs); if (dev2->bid_flags & BLKID_BID_FL_VERIFIED) continue; if (!dev->bid_type || !dev2->bid_type ||