gnu-arch-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnu-arch-users] [BUG] tla tree-lint segfaults when a *.id file is in th


From: Matthieu Moy
Subject: [Gnu-arch-users] [BUG] tla tree-lint segfaults when a *.id file is in the way
Date: Thu, 22 Apr 2004 19:56:05 +0200
User-agent: Gnus/5.1002 (Gnus v5.10.2) Emacs/21.2 (gnu/linux)

Steps to reproduce (on a minimalistic example)

$ cd /tmp/
$ mkdir test
$ cd test
$ tla init-tree
$ echo "tagline" >! \{arch}/=tagging-method 
$ cat \{arch}/=tagging-method 
tagline
$ touch foo.id
$ tla tree-lint 
Segmentation fault

Elements for a diagnosis:

$ strace tla tree-lint | & tail -12
brk(0x8190000)                          = 0x8190000
open("./.arch-ids/foo.id.id", O_RDONLY) = -1 ENOENT (No such file or directory)
open("./.arch-ids/=all", O_RDONLY)      = -1 ENOENT (No such file or directory)
open("./foo.id", O_RDONLY)              = 4
fstat64(4, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
lseek(4, 0, SEEK_SET)                   = 0
read(4, "", 1024)                       = 0
close(4)                                = 0
open("./.arch-ids/=default", O_RDONLY)  = -1 ENOENT (No such file or directory)
lstat64("./.arch-ids/=dont-care", 0xbfffdd2c) = -1 ENOENT (No such file or 
directory)
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++



$ gdb `which tla`
GNU gdb 6.0
Copyright 2003 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or 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.
This GDB was configured as "i686-pc-linux-gnu"...
(gdb) r tree-lint
Starting program: /home/moy/bin/tla tree-lint

Program received signal SIGSEGV, Segmentation fault.
0x080a7523 in str_chr_rindex (s=0x0, c=47) at 
/home/moy/local/usr/src/tla-1.2/src/hackerlab/char/str.c:148
148       while (*s)
(gdb) where
#0  0x080a7523 in str_chr_rindex (s=0x0, c=47) at 
/home/moy/local/usr/src/tla-1.2/src/hackerlab/char/str.c:148
#1  0x080aa7b8 in file_name_tail (limits=0x0, fname=0x0) at 
/home/moy/local/usr/src/tla-1.2/src/hackerlab/fs/file-names.c:242
#2  0x08082237 in tree_lint_callback (path=0x815cdea "foo.id", 
stat_buf=0xbfffe6bc, category=arch_inventory_source, id=0x818e210 "?_./foo.id", 
has_source_name=1, vthunk=0xbfffe7b8)
    at /home/moy/local/usr/src/tla-1.2/src/tla/libarch/proj-tree-lint.c:341
#3  0x0806f9c3 in arch_inventory_traversal_internal (options=0xbfffe7c4, 
root=0x81134da ".", callback=0x8081ffc <tree_lint_callback>, 
closure=0xbfffe7b8, id_tagging_shortcut=0x0, 
    explicit_skips=0xbfffe784) at 
/home/moy/local/usr/src/tla-1.2/src/tla/libarch/invent.c:811
#4  0x0806f103 in arch_inventory_traversal (options=0xbfffe7c4, root=0x81134da 
".", callback=0x8081ffc <tree_lint_callback>, closure=0xbfffe7b8)
    at /home/moy/local/usr/src/tla-1.2/src/tla/libarch/invent.c:457
#5  0x08081eb6 in arch_tree_lint (dirspec=0x815b9f8 "/tmp/test") at 
/home/moy/local/usr/src/tla-1.2/src/tla/libarch/proj-tree-lint.c:234
#6  0x080637e1 in arch_cmd_tree_lint (program_name=0x815a8a8 "tla tree-lint", 
argc=1, argv=0xbfffeff8) at 
/home/moy/local/usr/src/tla-1.2/src/tla/libarch/cmd-tree-lint.c:173
#7  0x0804a4d1 in main (argc=2, argv=0xbfffeff4) at 
/home/moy/local/usr/src/tla-1.2/src/tla/tla/tla.c:85
(gdb) 

-- 
Matthieu




reply via email to

[Prev in Thread] Current Thread [Next in Thread]