田口です。 検索語がちょっと違いますが、同じように落ちるパターンのgdbトレース です。
# gdb ./namazu GNU gdb 6.1.1 [FreeBSD] Copyright 2004 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 "i386-marcel-freebsd"... (gdb) run 仙台の歴史 Starting program: /usr/ports/databases/namazu2/work/namazu-2.0.16/src/namazu 仙\ 台の歴史 Program received signal SIGSEGV, Segmentation fault. 0x08065c1a in cmp_phrase_hash (hash_key=58168, val= {num = 34318, stat = ERR_TOO_MUCH_HIT, data = 0x81d9000}, phrase=0x2827c440, phrase_index=0x2827c498) at search.c:380 380 for (; j < val.num && docid >= val.data[j].docid; j++) { (gdb) where #0 0x08065c1a in cmp_phrase_hash (hash_key=58168, val= {num = 34318, stat = ERR_TOO_MUCH_HIT, data = 0x81d9000}, phrase=0x2827c440, phrase_index=0x2827c498) at search.c:380 #1 0x08066183 in do_phrase_search (key=0xbfbfd340 "仙台\tの\t歴史", src= {num = 0, stat = SUCCESS, data = 0x0}) at search.c:497 #2 0x08067be4 in nmz_do_searching (key=0x81745a4 "仙台の歴史", src= {num = 0, stat = SUCCESS, data = 0x0}) at search.c:1162 #3 0x08053f3e in factor () at parser.c:97 #4 0x08054130 in term () at parser.c:169 #5 0x080542d4 in nmz_expr () at parser.c:224 #6 0x08067074 in nmz_search_sub (hlist= {num = 0, stat = SUCCESS, data = 0x0}, query=0xbfbfdbf0 "仙台の歴史", n=0) at search.c:868 #7 0x0806773e in nmz_search (query=0xbfbfdbf0 "仙台の歴史") at search.c:1055 #8 0x0804afff in namazu_core (query=0xbfbfe830 "仙台の歴史", subquery=0xbfbfe430 "") at namazu.c:168 #9 0x0804fc77 in main (argc=2, argv=0xbfbfec84) at namazu-cmd.c:387 素人考えでは、val.data[j]に入っているポインタの値が変になってる 様に思えるのですが、これがどこで alloc されてるのかが追えなくて… _______________________________________________ Namazu-users-ja mailing list Namazu-users-ja@namazu.org http://www.namazu.org/cgi-bin/mailman/listinfo/namazu-users-ja