grub-devel
[Top][All Lists]
Advanced

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

Re: /kern/file.c BUG


From: Marco Gerards
Subject: Re: /kern/file.c BUG
Date: Sat, 26 Jan 2008 13:04:04 +0100
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux)

Robert Millan <address@hidden> writes:

> 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.

Thanks.  Can you look that up?

If you found it, I can help you fixing it, if you'd like?

--
Marco






reply via email to

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