On Tuesday 18 November 2008 13:56, Matthias Kaehlcke wrote:
> > Thanks for the updated patch, i'll test and apply it soon (unless
> > somebody beats me to it).
> > If you experience size-increase with using "quiet" instead of looking at
> > opt (i didn't try), then please follow-up.
> 
> here is a new version of the patch against busybox 1.13.0
> below the stats you asked me for
> 
> size busybox.org
>    text    data     bss     dec     hex filename
>  678767    2168    9396  690331   a889b busybox
> size busybox
>    text    data     bss     dec     hex filename
>  678651    2168    9396  690215   a8827 busybox
> 
> bloat-o-meter output:
> 
> function                                             old     new delta
> .rodata                                           123186  123201 +15
> ------------------------------------------------------------------------------
> (add/remove: 0/0 grow/shrink: 1/0 up/down: 15/0)               Total: 15 bytes

Tried. On my machine bloat-o-meter says:

function                                             old     new   delta
timer                                                  -      80     +80
wget_main                                           2457    2528     +71
static.wget_longopts                                 110     120     +10
packed_usage                                       25431   25441     +10
progressmeter                                        814     749     -65
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 3/1 up/down: 171/-65)           Total: 106 bytes

Testing:

# ./busybox wget -T2 
http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.6.tar.bz2
Connecting to kernel.org (204.152.191.37:80)
linux-2.6.27.6.tar.b   1% |                       |   566k 00:02:51 ETAw
get: download timed out

-T2 is supposed to be a read timeout, a timeout for single read.
You implemented it as timeout for the whole file to be downloaded.

You probably need to output a newline before timeout message.

> @@ -444,6 +469,8 @@
>  
>       INIT_G();
>  
> +     flags = 0;

It is already 0.

> +     if (opt & WGET_OPT_QUIET) {
> +             flags |= WGET_QUIET;
> +     }

You don't need this then. We have a global variable
option_mask32, you can just check (option_mask32 & WGET_OPT_QUIET)
instead of (flags & WGET_QUIET)


To be honest, whole dance with alarm() in wget needs rewriting,
poll(..., seconds*1000) + read() would allow signal-less handling
of progressmeter and/or timeout. Not your fault, of course...

--
vda
_______________________________________________
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox

Reply via email to