--- yaffs_guts.c Sun Jul 31 18:12:52 2005 +++ /tmp/yaffs_guts.c Mon Aug 1 00:36:13 2005 @@ -5599,6 +5599,9 @@ yaffs_Object *yaffs_FindObjectByName(yaf YBUG(); } + if (!name) + return NULL; + sum = yaffs_CalcNameSum(name); list_for_each(i,&directory->variant.directoryVariant.children) @@ -5610,6 +5613,8 @@ yaffs_Object *yaffs_FindObjectByName(yaf // Special case for lost-n-found if(l->objectId == YAFFS_OBJECTID_LOSTNFOUND) { +printk(KERN_ERR "%s:%d: name = '%s', objId = %d\n", __FUNCTION__, __LINE__, name, l->objectId); +BUG_ON(!name); if(yaffs_strcmp(name,YAFFS_LOSTNFOUND_NAME) == 0) { return l; @@ -5618,6 +5623,8 @@ yaffs_Object *yaffs_FindObjectByName(yaf else if(yaffs_SumCompare(l->sum, sum)|| l->chunkId <= 0) //LostnFound cunk called Objxxx { +printk(KERN_ERR "%s:%d: name = '%s', l-sum = %d, sum = %d, chunkId = %d\n", __FUNCTION__, __LINE__, name, l->sum, sum, l->chunkId); +BUG_ON(!name); // Do a real check yaffs_GetObjectName(l,buffer,YAFFS_MAX_NAME_LENGTH); if(yaffs_strcmp(name,buffer) == 0)