Restructure FAT driver to avoid hook in label reading as it hits a

GCC bug.

	* include/grub/err.h (grub_err_t): New enum value GRUB_ERR_EOF.
	* grub-core/fs/fat.c (grub_fat_iterate_context): New struct.
	(grub_fat_iterate_dir): Split into ...
	(grub_fat_iterate_init): ... this, ...
	(grub_fat_iterate_fini): ... this, ...
	(grub_fat_iterate_dir_next): ... and this. All users updated.
This commit is contained in:
Vladimir 'phcoder' Serbinenko 2012-06-20 23:29:28 +02:00
parent 9f1d654e67
commit 918a25179c
3 changed files with 183 additions and 145 deletions

View file

@ -68,7 +68,8 @@ typedef enum
GRUB_ERR_NET_INVALID_RESPONSE,
GRUB_ERR_NET_UNKNOWN_ERROR,
GRUB_ERR_NET_PACKET_TOO_BIG,
GRUB_ERR_NET_NO_DOMAIN
GRUB_ERR_NET_NO_DOMAIN,
GRUB_ERR_EOF
}
grub_err_t;