看板 PttCurrent 關於我們 聯絡資訊
※ 引述《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