yaffs-direct: Fix object leak caused by defered free
[yaffs2.git] / direct / yaffsfs.c
index 2cb8db985b82a73f5a34e3434b34224ca0b64cd0..6cffbc86ebc04705b59ae7b846022034a530e4f0 100644 (file)
@@ -247,13 +247,11 @@ static void yaffsfs_ReleaseInode(struct yaffsfs_Inode *in)
        struct yaffs_obj *obj;
 
        obj = in->iObj;
-
-       if (obj->unlinked)
-               yaffs_del_obj(obj);
-
        obj->my_inode = NULL;
        in->iObj = NULL;
 
+       if (obj->unlinked)
+               yaffs_del_obj(obj);
 }
 
 static void yaffsfs_PutInode(int inodeId)
@@ -2888,6 +2886,8 @@ void yaffs_add_device(struct yaffs_dev *dev)
                INIT_LIST_HEAD(&dev->dev_list);
 
        list_add(&dev->dev_list, &yaffsfs_deviceList);
+
+
 }
 
 void yaffs_remove_device(struct yaffs_dev *dev)