看板 PttCurrent 關於我們 聯絡資訊
※ 引述《lxb.bbs@bbs.hkday.net (lxb)》之銘言: : ※ 引述《lxb (lxb)》之銘言: : : 看看 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 的時代, 則尚未有之. static int reentrant = 0; if (!reentrant) { reentrant = 1; 這幾行從以前就一直都有 上頭引出來的 backtrace 現在 ptt 也時常見到, 但注意到那僅是 abort_bbs_debug 呼叫 abort_bbs 一次, 不會第二次, 掉入無窮循環. 因為在第二次遇到 reentrant 檢查就會 exit() 了 -- "聲音是聲音, icon 是 icon, 用 icon 來表示聲音的結果, 就是不知道哪個是聲音, 哪個是 icon. " 小光光 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.70.142.187