From 47148b669ba6bfe64e6ea75b98fc47d9b663deb7 Mon Sep 17 00:00:00 2001 From: okuji Date: Sat, 16 Dec 2000 20:25:15 +0000 Subject: [PATCH] fix a problem that chainloader doesn't report any error, even if it failed. --- ChangeLog | 6 ++++++ stage2/builtins.c | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/ChangeLog b/ChangeLog index 2100d54d3..c0adf4865 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2000-12-17 OKUJI Yoshinori + + * stage2/builtins.c (chainloader_func): Set ERRNUM to + ERR_EXEC_FORMAT, when ERRNUM is ERR_NONE, even if grub_read + fails in reading one sector. + 2000-12-14 OKUJI Yoshinori * docs/prog-ref.texi (Partition types): Rewrite the footnotes. diff --git a/stage2/builtins.c b/stage2/builtins.c index dc589ee59..2f7ed54cb 100644 --- a/stage2/builtins.c +++ b/stage2/builtins.c @@ -418,6 +418,12 @@ chainloader_func (char *arg, int flags) { grub_close (); kernel_type = KERNEL_TYPE_NONE; + + /* This below happens, if a file whose size is less than 512 bytes + is loaded. */ + if (errnum == ERR_NONE) + errnum = ERR_EXEC_FORMAT; + return 1; }