Subject: bin/6451: diff seg faults when fed one or more nonexistent files
To: None <gnats-bugs@gnats.netbsd.org>
From: None <fb@enteract.com>
List: netbsd-bugs
Date: 11/17/1998 08:43:43
>Number: 6451
>Category: bin
>Synopsis: diff seg faults when fed one or more nonexistent files
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: bin-bug-people (Utility Bug People)
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Nov 17 06:50:01 1998
>Last-Modified:
>Originator: Frederick Bruckman
>Organization:
>Release: November 16, 1998
>Environment:
System: NetBSD fb.sa.enteract.com 1.3H NetBSD 1.3H (FB) #142:
Mon Nov 16 11:23:30 CST 1998 fredb@fb.sa.enteract.com:
/usr/src/sys/arch/mac68k/compile/FB mac68k
>Description:
Just like it says. Using stock compiler, "make build" done against
November 16 sup with default options.
Could be related to bin/5824: ldd quits with signal 11 if lib is not
found.
>How-To-Repeat:
Here's a backtrace from a "diff" built with CFLAGS=-g.
root-> ./diff nonexistent none
./diff: Segmentation fault (core dumped)
root-> gdb ./diff diff.core
GDB is free software and you are welcome to distribute copies of it
under certain conditions; type "show copying" to see the conditions.
There is absolutely no warranty for GDB; type "show warranty" for details.
GDB 4.16 (m68k--netbsd), Copyright 1996 Free Software Foundation, Inc...
Core was generated by `diff'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/libexec/ld.so...done.
Reading symbols from /usr/lib/libgnumalloc.so.0.0...done.
Reading symbols from /usr/lib/libc.so.12.33...done.
#0 0x407a736 in strlen ()
(gdb) bt
#0 0x407a736 in strlen ()
#1 0x4065e58 in perror ()
#2 0x9e4a in perror_with_name (text=0xffffc7db "nonexistent") at util.c:57
#3 0x510a in compare_files (dir0=0x0, name0=0xffffc7db "nonexistent",
dir1=0x0, name1=0xffffc7e7 "none", depth=0) at diff.c:919
#4 0x3b7e in main (argc=3, argv=0xffffc750) at diff.c:631
(gdb) quit
>Fix:
>Audit-Trail:
>Unformatted: