]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
* grub-core/fs/udf.c: Remove variable length arrays.
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Sun, 20 Oct 2013 14:33:12 +0000 (16:33 +0200)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Sun, 20 Oct 2013 14:33:12 +0000 (16:33 +0200)
Increases udf.mod by 128 bytes (but decreases by 13 compressed when
compressed).

ChangeLog
grub-core/fs/udf.c

index 5382a03e474a7573da96511b90830f33db21ae02..8e68fc451510b5b7f7455386c39a8bf443300514 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
+
+       * grub-core/fs/udf.c: Remove variable length arrays.
+       Increases udf.mod by 128 bytes (but decreases by 13 compressed when
+       compressed).
+
 2013-10-20  Vladimir Serbinenko  <phcoder@gmail.com>
 
        * grub-core/fs/iso9660.c: Remove variable length arrays.
index 8f3305367aab19f73697120d16f4fe4118bc705f..60ce928306093d32b2857a53e4356132fc4dd55f 100644 (file)
@@ -216,6 +216,7 @@ struct grub_udf_file_ident
   struct grub_udf_tag tag;
   grub_uint16_t version_num;
   grub_uint8_t characteristics;
+#define MAX_FILE_IDENT_LENGTH 256
   grub_uint8_t file_ident_length;
   struct grub_udf_long_ad icb;
   grub_uint16_t imp_use_length;
@@ -909,7 +910,7 @@ grub_udf_iterate_dir (grub_fshelp_node_t dir,
            {
              enum grub_fshelp_filetype type;
              char *filename;
-             grub_uint8_t raw[dirent.file_ident_length];
+             grub_uint8_t raw[MAX_FILE_IDENT_LENGTH];
 
              type = ((dirent.characteristics & GRUB_UDF_FID_CHAR_DIRECTORY) ?
                      (GRUB_FSHELP_DIR) : (GRUB_FSHELP_REG));