Explorar o código

yaffs2: iterator variable cannot be NULL

The iterator of list_for_each() is never NULL.

Identified with coccinelle.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Heinrich Schuchardt %!s(int64=6) %!d(string=hai) anos
pai
achega
428e60e079
Modificáronse 2 ficheiros con 5 adicións e 8 borrados
  1. 2 2
      fs/yaffs2/yaffs_guts.c
  2. 3 6
      fs/yaffs2/yaffsfs.c

+ 2 - 2
fs/yaffs2/yaffs_guts.c

@@ -1872,8 +1872,8 @@ static int yaffs_new_obj_id(struct yaffs_dev *dev)
 		n += YAFFS_NOBJECT_BUCKETS;
 		list_for_each(i, &dev->obj_bucket[bucket].list) {
 			/* If there is already one in the list */
-			if (i && list_entry(i, struct yaffs_obj,
-					    hash_link)->obj_id == n) {
+			if (list_entry(i, struct yaffs_obj,
+				       hash_link)->obj_id == n) {
 				found = 0;
 				break;
 			}

+ 3 - 6
fs/yaffs2/yaffsfs.c

@@ -2847,12 +2847,9 @@ static void yaffsfs_RemoveObjectCallback(struct yaffs_obj *obj)
 	 * the next one to prevent a hanging ptr.
 	 */
 	list_for_each(i, &search_contexts) {
-		if (i) {
-			dsc = list_entry(i, struct yaffsfs_DirSearchContxt,
-					 others);
-			if (dsc->nextReturn == obj)
-				yaffsfs_DirAdvance(dsc);
-		}
+		dsc = list_entry(i, struct yaffsfs_DirSearchContxt, others);
+		if (dsc->nextReturn == obj)
+			yaffsfs_DirAdvance(dsc);
 	}
 
 }