diff --git a/ChangeLog b/ChangeLog index 574f63cb4..8f30b557a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2011-12-13 Vladimir Serbinenko + + * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Force inlining of + add_part to workaround compiler bug. + 2011-12-13 Vladimir Serbinenko * include/grub/kernel.h (FOR_MODULES): Preserve alignment invariants. diff --git a/grub-core/fs/iso9660.c b/grub-core/fs/iso9660.c index 7b1e32f7c..048c361a6 100644 --- a/grub-core/fs/iso9660.c +++ b/grub-core/fs/iso9660.c @@ -533,10 +533,12 @@ grub_iso9660_iterate_dir (grub_fshelp_node_t dir, grub_off_t len; char *symlink = 0; - auto void add_part (const char *part, int len); - /* Extend the symlink. */ - void add_part (const char *part, int len2) + auto inline void __attribute__ ((always_inline)) add_part (const char *part, + int len2); + + auto inline void __attribute__ ((always_inline)) add_part (const char *part, + int len2) { int size = symlink ? grub_strlen (symlink) : 0;