]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
* grub-core/fs/jfs.c (grub_jfs_sblock): Make volname a char array.
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Tue, 31 Jan 2012 21:49:11 +0000 (22:49 +0100)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Tue, 31 Jan 2012 21:49:11 +0000 (22:49 +0100)
Add new member volname2.
(grub_jfs_label): Use volname2 if available.

ChangeLog
grub-core/fs/jfs.c

index eaad8130e3014a3f2b7b078a8e50c349ef6d5ef6..c45413c1c4a1ed84b51b48363fb9fb9f86b93b19 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2012-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
+
+       * grub-core/fs/jfs.c (grub_jfs_sblock): Make volname a char array.
+       Add new member volname2.
+       (grub_jfs_label): Use volname2 if available.
+
 2012-01-31  Vladimir Serbinenko  <phcoder@gmail.com>
 
        * grub-core/fs/nilfs2.c (grub_nilfs2_super_block): Expand volume_name
index 72d6fe4c1f84105bd92d825b6ec2cf0f2a7f0dbd..d47be782a827923074bea74b2e3384c937eb9474 100644 (file)
@@ -53,9 +53,10 @@ struct grub_jfs_sblock
   grub_uint16_t log2_blksz;
 
   grub_uint8_t unused[79];
-  grub_uint8_t volname[11];
+  char volname[11];
   grub_uint8_t unused2[24];
   grub_uint8_t uuid[16];
+  char volname2[16];
 };
 
 struct grub_jfs_extent
@@ -887,7 +888,14 @@ grub_jfs_label (grub_device_t device, char **label)
   data = grub_jfs_mount (device->disk);
 
   if (data)
-    *label = grub_strndup ((char *) (data->sblock.volname), 11);
+    {
+      if (data->sblock.volname2[0])
+       *label = grub_strndup (data->sblock.volname2,
+                              sizeof (data->sblock.volname2));
+      else
+       *label = grub_strndup (data->sblock.volname,
+                              sizeof (data->sblock.volname));
+    }
   else
     *label = 0;