]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
Merge mainline into newreloc
authorVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Thu, 14 Jan 2010 12:43:34 +0000 (13:43 +0100)
committerVladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Thu, 14 Jan 2010 12:43:34 +0000 (13:43 +0100)
1  2 
loader/i386/multiboot.c

index f7bf2a774d89f2825fd9309e2e21a91b8e00f09e,5dc30411777868209c962a33a3425d0b2c1c0aa0..58065fb71b2b641774999a93b9d2c7a677ab36f9
@@@ -253,18 -273,15 +253,23 @@@ grub_module  (int argc, char *argv[]
      goto fail;
  
    size = grub_file_size (file);
 -  module = grub_memalign (MULTIBOOT_MOD_ALIGN, size);
 -  if (! module)
 +  err = grub_relocator_alloc_chunk_align (grub_multiboot_relocator, &module, 
 +                                        &target,
 +                                        0, (0xffffffff - size) + 1,
 +                                        size, MULTIBOOT_MOD_ALIGN,
 +                                        GRUB_RELOCATOR_PREFERENCE_NONE);
 +  if (err)
 +    goto fail;
 +
 +  err = grub_multiboot_add_module (target, size, argc - 1, argv + 1);
 +  if (err)
      goto fail;
  
+   err = grub_multiboot_add_module ((grub_addr_t) module, size,
+                                  argc - 1, argv + 1);
+   if (err)
+     goto fail;
    if (grub_file_read (file, module, size) != size)
      {
        grub_error (GRUB_ERR_FILE_READ_ERROR, "couldn't read file");