bug-grub
[Top][All Lists]
Advanced

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

Re: 3 .92 bugs


From: Yoshinori K. Okuji
Subject: Re: 3 .92 bugs
Date: Tue, 07 May 2002 11:09:12 +0900
User-agent: Wanderlust/2.8.1 (Something) SEMI/1.14.3 (Ushinoya) FLIM/1.14.3 (Unebigoryƍmae) APEL/10.3 Emacs/21.2 (i386-debian-linux-gnu) MULE/5.0 (SAKAKI)

At Mon, 6 May 2002 17:08:05 -0700,
Gary Poppitz wrote:
> In fsys_tftp.c: line ~392
> 
>       /* Read the data.  */
>       if (! buf_fill (0))
>       {
>         errnum = ERR_READ;
>         return 0;
>       }
> I think it is better to do       if (size > 0 && ! buf_fill (0))
> Otherwise, large file xfers get confused with extra RRQ's.

Could you elaborate on that? What case can that be wrong in?

> In builtins.c : install_func
> 
> #endif /* GRUB_UTIL */
>     {
>       /* The first.  */
>       current_drive = src_drive;           //These two are clearly wrong
>       current_partition = src_partition;
> 
>       if (! open_partition ())
>       goto fail;
> 
>       if (! devwrite (stage2_first_sector - src_part_start, 1,
>                     stage2_first_buffer))
>       goto fail;
> 
> 
> Since we are writing out our stuff, better point to the dest drive!

No. I don't think you understand the code correctly. Stage 2 always
sits on the source drive.

> Since the strcmp is an arithmetic compare, returning <0 is quite legal.
> This will cause the search to terminate too soon. How this worked at all I 
> dont know.

You don't look at the whole code. The table is sorted out already.

> Also, when there is nothing else to do, removing the hoarde of globals in 
> this code would be a great improvement. Just try to do a copy function from 
> one drive to another with the current setup.

I failed to see what you mean here unfortunately.

Thanks,
Okuji



reply via email to

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