Fix compilation of mkyaffsimage and mkyaffs2image
authorCharles Manning <cdhmanning@gmail.com>
Mon, 26 Mar 2012 00:26:44 +0000 (13:26 +1300)
committerCharles Manning <cdhmanning@gmail.com>
Mon, 26 Mar 2012 00:26:44 +0000 (13:26 +1300)
Signed-off-by: Charles Manning <cdhmanning@gmail.com>
utils/mkyaffs2image.c
utils/mkyaffsimage.c

index 5292b66..b46f285 100644 (file)
@@ -242,7 +242,8 @@ static void object_header_little_to_big_endian(struct yaffs_obj_hdr* oh)
     oh->yst_mtime = SWAP32(oh->yst_mtime);
     oh->yst_ctime = SWAP32(oh->yst_ctime);
 
-    oh->file_size = SWAP32(oh->file_size); // Aiee. An int... signed, at that!
+    oh->file_size_low = SWAP32(oh->file_size_low); // Aiee. An int... signed, at that!
+    oh->file_size_high = SWAP32(oh->file_size_high); // Aiee. An int... signed, at that!
     oh->equiv_id = SWAP32(oh->equiv_id);
     // alias  - char array.
     oh->yst_rdev = SWAP32(oh->yst_rdev);
@@ -300,7 +301,8 @@ static int write_object_header(int id, enum yaffs_obj_type t, struct stat *s, in
        
        if(t == YAFFS_OBJECT_TYPE_FILE)
        {
-               oh->file_size = s->st_size;
+               oh->file_size_low = s->st_size;
+               oh->file_size_high = (s->st_size >> 32);
        }
        
        if(t == YAFFS_OBJECT_TYPE_HARDLINK)
index 5dbe51a..1d83595 100644 (file)
@@ -45,8 +45,7 @@ typedef struct
 
 
 static objItem obj_list[MAX_OBJECTS];
-static int n_obj = 0;
-static int obj_id = YAFFS_NOBJECT_BUCKETS + 1;
+static int obj_alloc_id = YAFFS_NOBJECT_BUCKETS + 1;
 
 static int n_obj, nDirectories, nPages;
 
@@ -283,7 +282,7 @@ static void object_header_little_to_big_endian(struct yaffs_obj_hdr* oh)
     oh->yst_mtime = SWAP32(oh->yst_mtime);
     oh->yst_ctime = SWAP32(oh->yst_ctime);
 
-    oh->file_size = SWAP32(oh->file_size); // Aiee. An int... signed, at that!
+    oh->file_size_low = SWAP32(oh->file_size_low); // Aiee. An int... signed, at that!
     oh->equiv_id = SWAP32(oh->equiv_id);
     // alias  - char array.
     oh->yst_rdev = SWAP32(oh->yst_rdev);
@@ -334,7 +333,7 @@ static int write_object_header(int obj_id, enum yaffs_obj_type t, struct stat *s
        
        if(t == YAFFS_OBJECT_TYPE_FILE)
        {
-               oh->file_size = s->st_size;
+               oh->file_size_low = s->st_size;
        }
        
        if(t == YAFFS_OBJECT_TYPE_HARDLINK)
@@ -394,7 +393,7 @@ static int process_directory(int parent, const char *path)
                                    S_ISSOCK(stats.st_mode))
                                {
                                
-                                       newObj = obj_id++;
+                                       newObj = obj_alloc_id++;
                                        n_obj++;
                                        
                                        printf("Object %d, %s is a ",newObj,full_name);