看板PttCurrent
標 題Re: [問題] mbbsd/edit.c 的 seg fault 修好過沒有?
發信站HKDAY (Mon May 23 03:20:10 2005)
轉信站ptt!Group.NCTU!grouppost!Group.NCTU!hkday
※ 引述《lxb (lxb)》之銘言:
: ※ 引述《[email protected] (小光光)》之銘言:
: : 理論上應該不會出現這種問題才對
: : 因為 abort_bbs_debug() 裡會檢查是否 reentrant,
: : 第二次進去則不會再 u_exit()
: 看看 backtrace 一例:
: #0 0x806b85b in auto_backup () at edit.c:581
: #1 0x807ebd9 in u_exit (mode=0x80b8292 "ABORTED") at mbbsd.c:155
: #2 0x807ed50 in abort_bbs (sig=1) at mbbsd.c:198
: #3 0xbfbfffac in ?? ()
: #4 0x807ebd9 in u_exit (mode=0x80b829a "AXXED") at mbbsd.c:155
: #5 0x807edbc in abort_bbs_debug (sig=11) at mbbsd.c:215
: #6 0xbfbfffac in ?? ()
: 注意, 以上的 symbol file 不是來自 current 的,
: 若莫和 Revision 1715 相當.
比對以下兩頁:
http://bbs.hkday.net/~source/pttbbs/mbbsd/mbbsd.c
http://opensvn.csie.org/pttbbs/trunk/pttbbs/mbbsd/mbbsd.c
current ptt 的 u_exit 是有一行
currmode = 0;
而 abort_bbs_debug 則又有一行
static int reentrant = 0;
以及相關的檢查, 這在 rev 1715 的時代, 則尚未有之.
--
※ 發信站: 香港地(hkday.net)
◆ From: 61.238.143.229