]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
* grub-core/lib/arg.c (grub_arg_list_alloc): Use shifts rather
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Sun, 10 Mar 2013 19:08:15 +0000 (20:08 +0100)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Sun, 10 Mar 2013 19:08:15 +0000 (20:08 +0100)
than divisions.

ChangeLog
grub-core/lib/arg.c

index c2821c9568c89956b7fc5fbb38d0c8fd3efa27f7..8f8de8bfd864307486fb4aa0d4fcf53c8fdec84d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2013-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
+
+       * grub-core/lib/arg.c (grub_arg_list_alloc): Use shifts rather
+       than divisions.
+
 2013-03-10  Vladimir Serbinenko  <phcoder@gmail.com>
 
        * grub-core/commands/verify.c (grub_verify_signature): Use unsigned
index da44e3025d14ec2193a67a4ed6f532f2b4348dda..7492ac6a8f246eefe5db904e1bc330b1627db1a3 100644 (file)
@@ -428,7 +428,7 @@ grub_arg_list_alloc(grub_extcmd_t extcmd, int argc,
 {
   int i;
   char **args;
-  unsigned argcnt;
+  grub_size_t argcnt;
   struct grub_arg_list *list;
   const struct grub_arg_option *options;
 
@@ -440,7 +440,7 @@ grub_arg_list_alloc(grub_extcmd_t extcmd, int argc,
   for (i = 0; options[i].doc; i++)
     {
       if (options[i].flags & GRUB_ARG_OPTION_REPEATABLE)
-       argcnt += (argc + 1) / 2 + 1; /* max possible for any option */
+       argcnt += ((grub_size_t) argc + 1) / 2 + 1; /* max possible for any option */
     }
 
   list = grub_zalloc (sizeof (*list) * i + sizeof (char*) * argcnt);
@@ -456,7 +456,7 @@ grub_arg_list_alloc(grub_extcmd_t extcmd, int argc,
       if (options[i].flags & GRUB_ARG_OPTION_REPEATABLE)
        {
          list[i].args = args;
-         args += argc / 2 + 1;
+         args += (grub_size_t) argc / 2 + 1;
        }
     }
   return list;