作者VictorHsieh (不要想太多)
看板PttCurrent
標題Re: Pttbbs - port to Solaris
時間Thu Sep 9 00:23:46 2004
※ 引述《liujh (集氣!)》之銘言:
: ※ 引述《VictorHsieh (不要想太多)》之銘言:
: 小弟在 Solaris 9 上面試...
: 可以正常 make
: 並且把所有的 signal() 改用 bsd_signal()
: 但是有時在進入看板會斷線
: gdb 的資料在下面:
: #0 0xef4b397c in memcpy () from /lib/libc.so.1
: (gdb) up
: #1 0x00093be8 in brc_read_record (bid=10, num=0xd4f68, list=0xd4de4)
: at brc.c:318
: 318 memcpy(list, ptr + sizeof(brcbid_t) + sizeof(brcnbrd_t),
這個地方 *num 的值是對的嗎
因為下面的 newflag 理論上只能是 0 或 1
所以也許在某個地方記憶體被亂搞 :p
: (gdb) up
: #2 0x00093d58 in brc_initial_board (boardname=0xef15c9dc "WhoAmI")
: at brc.c:342
: 342 return brc_read_record(currbid, &brc_num, brc_list);
: (gdb) up
: #3 0x000305f0 in choose_board (newflag=-283784740) at board.c:1090
: 1090 brc_initial_board(B_BH(ptr)->brdname);
: (gdb) up
: Initial frame selected; you cannot go up.
: (gdb)
: 另外, shmctl hotboard 也會當掉
: bash-2.05$ bin/shmctl hotboard
: 00000|PttDigest |文摘 ◎企鵝站文摘 好文的收集地
: 00000|EditExp |嘰哩 ◎範本精靈投稿區
: 00000|WhoAmI |嘰哩 ◎呵呵,猜猜我是誰!
: 00000|Record |嘰哩 ◎我們的成果
: 00000|Note |嘰哩 ◎動態看板及歌曲投稿
: 00000|ALLPOST |嘰哩 ◎跨板式LOCAL新文章
: Segmentation Fault (core dumped)
: gdb 看的結果...
: #0 0xef4b44e4 in strlen () from /lib/libc.so.1
: (gdb) up
: #1 0xef506bec in _doprnt () from /lib/libc.so.1
: (gdb) up
: #2 0xef508780 in printf () from /lib/libc.so.1
: (gdb) up
: #3 0x0001d6ec in hotboard (argc=105, argv=0x0) at shmctl.c:686
: 686 printf("%05d|%-12s|%s\n",
你可能在這個地方 print brd[i] 之類的看看吧 :p
(我發現這個地方 *brd malloc 之後沒有 free 掉耶 XD)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.244.208