grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: /kern/file.c BUG


From: Robert Millan
Subject: Re: /kern/file.c BUG
Date: Sat, 26 Jan 2008 00:57:00 +0100
User-agent: Mutt/1.5.13 (2006-08-11)

On Fri, Jan 25, 2008 at 09:50:14AM +0100, Marco Gerards wrote:
> Vesa Jääskeläinen <address@hidden> writes:
> 
> (replying to this mail, I didn't receive the first mail over the list...)
> 
> > Robert Millan wrote:
> >> On Wed, Jan 23, 2008 at 11:00:57PM +0000, Oleg Strikov wrote:
> >>> Incorrect behavior of grub_file_open () function in e.g. loop context:
> >>>
> >>> char *file_names[] =
> >>> {
> >>> "(hd0,1)/file1", //file do not exist
> >>> "(hd0,1)/file2"  //file exist
> >>> };
> >>> grub_file_t file;
> >>> int i;
> >>> for (i = 0; i < 2; i++)
> >>> {
> >>>      file  = grub_file_open (file_names[i]);
> >>>      if (file) {...}
> >>> }
> >>>
> >>> There, we should get positive return in the second case (i == 1), but
> >>> grub_file_open() returns 0.
> 
> No, that is not right.  This behavior is correct.
> 
> When you open the first file, you get an error which you ignore.  If
> you think this error is harmless, clear it.  So your code is wrong.

Ok, I reverted it.  This will uncover another bug somewhere else.  I can't
remember what it was about, though.

-- 
Robert Millan

<GPLv2> I know my rights; I want my phone call!
<DRM> What use is a phone call… if you are unable to speak?
(as seen on /.)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]