Hello,
I have a problem with the current (2010-03-09) find:
(freshly unpacked)
$ ./find . -exec echo {} +
. ./bb2tok ./look ./pax [...] ./vmstate ./bzip2
Segmentation fault (core dumped)
$ uname -sr; dpkg -l libc6
Linux 2.6.27.31
[...]
ii libc6 2.3.6.ds1-13etch10+b1
All found files are displayed, the problem occurs later.
I couldn't get insight with the provided binary, although
I tried to provide gdb with the source.
(gdb) bt
#0 0xb7f5c938 in cmdclose () from
/home/mascheck/tapes/shell/ast/arch/linux.i386/bin/../lib/libast.so
#1 0x0804baaa in main ()
I compiled it with CFLAGS=-g, but it was linked statically then, anyway.
$ ldd arch/linux.i386/bin/find
linux-gate.so.1 => (0xffffe000)
libc.so.6 => /lib/tls/libc.so.6 (0xb7dce000)
/lib/ld-linux.so.2 (0xb7f09000)
I still got the segv,
$ gdb ./arch/linux.i386/bin/find core
Core was generated by `./arch/linux.i386/bin/find arch/linux.i386/bin/ -exec
echo {} +'.
Program terminated with signal 11, Segmentation fault.
#0 0x0808364e in cmdclose (cmd=0x68637261) at
/home/mascheck/tapes/shell/ast/source/src/lib/libast/misc/cmdarg.c:343
343 if ((cmd->flags & CMD_EXACT) && cmd->argcount < cmd->argmax)
(gdb) bt
#0 0x0808364e in cmdclose (cmd=0x68637261) at
/home/mascheck/tapes/shell/ast/source/src/lib/libast/misc/cmdarg.c:343
#1 0x0804e4a1 in main (argc=6, argv=0xbff78d34) at
/home/mascheck/tapes/shell/ast/source/src/cmd/tw/find.c:1856
(gdb) print *cmd
Cannot access memory at address 0x68637261
Oh, and I guess, find would be so glad if -exec + would be
documented, because David Korn himself gave birth to this
feature in SVR4 -- where it was not documented, either ;-)
My earlier hint to this list apparently got lost:
On Thu, Jan 26, 2006 at 09:42:07PM +0100, Sven Mascheck wrote:
>
> - find actually implements the SVR4/SUSv3 "-exec cmd {} +".
>
> This is not documented (neither mentioned in the manual page,
> nor in cmd/tw/RELEASE).
_______________________________________________
ast-users mailing list
[email protected]
https://mailman.research.att.com/mailman/listinfo/ast-users