yaffs2: Yaffs endian support
[yaffs2.git] / yaffs_yaffs1.c
index a70c1422e1cbc844dbf8b9338060e4ed2f10412e..e98d04d434a3b9c68bcc5c2c1db7e21f5d024153 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
  *
- * Copyright (C) 2002-2010 Aleph One Ltd.
+ * Copyright (C) 2002-2011 Aleph One Ltd.
  *   for Toby Churchill Ltd and Brightstar Engineering
  *
  * Created by Charles Manning <charles@aleph1.co.uk>
@@ -42,7 +42,7 @@ int yaffs1_scan(struct yaffs_dev *dev)
                "yaffs1_scan starts  intstartblk %d intendblk %d...",
                dev->internal_start_block, dev->internal_end_block);
 
-       chunk_data = yaffs_get_temp_buffer(dev, __LINE__);
+       chunk_data = yaffs_get_temp_buffer(dev);
 
        dev->seq_number = YAFFS_LOWEST_SEQUENCE_NUMBER;
 
@@ -162,15 +162,15 @@ int yaffs1_scan(struct yaffs_dev *dev)
                                if (in &&
                                    in->variant_type ==
                                     YAFFS_OBJECT_TYPE_FILE &&
-                                   in->variant.file_variant.scanned_size <
+                                   in->variant.file_variant.stored_size <
                                      endpos) {
-                                       in->variant.file_variant.scanned_size =
+                                       in->variant.file_variant.stored_size =
                                            endpos;
                                        if (!dev->param.use_header_file_size) {
                                                in->variant.
                                                    file_variant.file_size =
                                                    in->variant.
-                                                   file_variant.scanned_size;
+                                                   file_variant.stored_size;
                                        }
 
                                }
@@ -323,11 +323,9 @@ int yaffs1_scan(struct yaffs_dev *dev)
                                        case YAFFS_OBJECT_TYPE_FILE:
                                                if (dev->param.
                                                    use_header_file_size)
-
                                                        in->variant.
-                                                        file_variant.file_size
-                                                           = oh->file_size;
-
+                                                       file_variant.file_size
+                                                       = yaffs_oh_to_size(dev, oh, 0);
                                                break;
                                        case YAFFS_OBJECT_TYPE_HARDLINK:
                                                in->variant.
@@ -413,7 +411,7 @@ int yaffs1_scan(struct yaffs_dev *dev)
                }
        }
 
-       yaffs_release_temp_buffer(dev, chunk_data, __LINE__);
+       yaffs_release_temp_buffer(dev, chunk_data);
 
        if (alloc_failed)
                return YAFFS_FAIL;