Andrew Schepler <[EMAIL PROTECTED]> wrote:
> printf(1) of the shell-utils stuffs has a bug that appears when a
> conversion code fails to convert a number argument with '*' and then
> attempts to print a string anyway.
>
> Examples:
> printf %*s a foo
> printf %.*s text asdf
>
> Both of these will typically print garbage to the terminal, sometimes
> munging things up to require a 'reset'. They will occasionally result in
> the death of their parent shell.
Thanks for the report!
That is a bug in bash's builtin printf function, not in the
one from sh-utils.
To use the version from the sh-utils package, you can invoke it like this:
$ `which printf` '%*s\n' a foo
/usr/bin/printf: a: expected a numeric value
foo
[Exit 1]
Here's what happens when I use bash's builtin printf:
$ echo $BASH_VERSION
2.05.0(1)-release
$ printf %*s a foo
bash: printf: a: invalid number
Segmentation fault
[Exit 139 (SIGSEGV)]
Configuration Information [Automatically generated, do not change]:
Machine: i386
OS: linux-gnu
Compiler: gcc
Compilation CFLAGS: -DPROGRAM='bash' -DCONF_HOSTTYPE='i386' -DCONF_OSTYPE='linux-gnu'
-DCONF_MACHTYPE='i386-pc-linux-gnu' -DCONF_VENDOR='pc' -DSHELL -DHAVE_CONFIG_H
-D_FILE_OFFSET_BITS=64 -I. -I/usr/include -I/home/debian/src/bash/bash-2.05
-I/home/debian/src/bash/bash-2.05/include -I/home/debian/src/bash/bash-2.05/lib
-I/usr/include -g -O2
uname output: Linux seche 2.4.4 #2 SMP Sat May 5 12:04:23 CEST 2001 i686 unknown
Machine Type: i386-pc-linux-gnu
Bash Version: 2.05
Patch Level: 0
Release Status: release
...
_______________________________________________
Bug-sh-utils mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-sh-utils