On 7/22/11 10:38 AM, Ralph Corderoy wrote:
>> OK, well for %b and %q bash's built-in printf calls it's own
>> printstr() and that does do things like `fw = -fw' without checking if
>> fw was already the largest negative.
> 
> On a related note, I can't interrupt this, e.g. Ctrl-C.
> 
>     printf '%-92233720368547758q.\n' foo
> 

That's interesting, since the fieldwidth (and precision) end up getting
set to 0 if they overflow INT_MAX, at least on my machine, and the result
is more or less instantaneous.  I agree that bash should do the same
thing in printstr when presented with an overflowing field width that it
does when using getint().  I will look at making that change.

Chet
-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
                 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU    c...@case.edu    http://cnswww.cns.cwru.edu/~chet/

Reply via email to