diff --git a/debian/patches/restore_mkdevicemap.patch b/debian/patches/restore_mkdevicemap.patch index 51d530e0a..48bb8cdb3 100644 --- a/debian/patches/restore_mkdevicemap.patch +++ b/debian/patches/restore_mkdevicemap.patch @@ -29,13 +29,16 @@ Index: b/include/grub/util/deviceiter.h =================================================================== --- /dev/null +++ b/include/grub/util/deviceiter.h -@@ -0,0 +1,11 @@ +@@ -0,0 +1,14 @@ +#ifndef GRUB_DEVICEITER_MACHINE_UTIL_HEADER +#define GRUB_DEVICEITER_MACHINE_UTIL_HEADER 1 + +#include + -+void grub_util_iterate_devices (int (*hook) (const char *, int), ++typedef int (*grub_util_iterate_devices_hook_t) (const char *name, ++ int is_floppy, void *data); ++ ++void grub_util_iterate_devices (grub_util_iterate_devices_hook_t hook, + void *hook_data, int floppy_disks); +void grub_util_emit_devicemap_entry (FILE *fp, char *name, int is_floppy, + int *num_fd, int *num_hd); @@ -568,7 +571,7 @@ Index: b/util/deviceiter.c +#endif /* __linux__ */ + +void -+grub_util_iterate_devices (int (*hook) (const char *, int), void *hook_data, ++grub_util_iterate_devices (int (*hook) (const char *, int, void *), void *hook_data, + int floppy_disks) +{ + int i; @@ -1102,7 +1105,7 @@ Index: b/util/grub-mkdevicemap.c + if (! ctx.fp) + grub_util_error (_("cannot open %s"), device_map); + -+ grub_util_iterate_devices (process_device, floppy_disks, &ctx); ++ grub_util_iterate_devices (process_device, &ctx, floppy_disks); + + if (ctx.fp != stdout) + fclose (ctx.fp); diff --git a/include/grub/util/deviceiter.h b/include/grub/util/deviceiter.h index 82dec271f..85374978c 100644 --- a/include/grub/util/deviceiter.h +++ b/include/grub/util/deviceiter.h @@ -3,7 +3,10 @@ #include -void grub_util_iterate_devices (int (*hook) (const char *, int), +typedef int (*grub_util_iterate_devices_hook_t) (const char *name, + int is_floppy, void *data); + +void grub_util_iterate_devices (grub_util_iterate_devices_hook_t hook, void *hook_data, int floppy_disks); void grub_util_emit_devicemap_entry (FILE *fp, char *name, int is_floppy, int *num_fd, int *num_hd); diff --git a/util/deviceiter.c b/util/deviceiter.c index 8db1f5747..4c5e42e80 100644 --- a/util/deviceiter.c +++ b/util/deviceiter.c @@ -526,7 +526,7 @@ compare_devices (const void *a, const void *b) #endif /* __linux__ */ void -grub_util_iterate_devices (int (*hook) (const char *, int), void *hook_data, +grub_util_iterate_devices (int (*hook) (const char *, int, void *), void *hook_data, int floppy_disks) { int i; diff --git a/util/grub-mkdevicemap.c b/util/grub-mkdevicemap.c index d6043f0aa..f80054548 100644 --- a/util/grub-mkdevicemap.c +++ b/util/grub-mkdevicemap.c @@ -76,7 +76,7 @@ make_device_map (const char *device_map, int floppy_disks) if (! ctx.fp) grub_util_error (_("cannot open %s"), device_map); - grub_util_iterate_devices (process_device, floppy_disks, &ctx); + grub_util_iterate_devices (process_device, &ctx, floppy_disks); if (ctx.fp != stdout) fclose (ctx.fp);