Closed ma8ma closed 1 year ago
スレを更新したときに異常終了したためgdbで調べたところLAYOUT構造体のメンバーにアクセスしたときnullptrを参照していました。 そのためメンバーにアクセスする処理の前にnullチェックを追加して修正します。
gdb のバックトレース
Thread 1 "jdim" received signal SIGSEGV, Segmentation fault. ARTICLE::DrawAreaBase::exec_draw_screen (this=0x55555cd359c0, y_redraw=0, height_redraw=723) at ../src/article/drawareabase.cpp:1820 1820 if( header->rect->y <= pos_y && header->next_header->rect->y >= pos_y ) break; (gdb) p header $1 = (ARTICLE::LAYOUT *) 0x55555d4969a8 (gdb) p header->rect $2 = (ARTICLE::RECTANGLE *) 0x0
スレを更新したときに異常終了したためgdbで調べたところLAYOUT構造体のメンバーにアクセスしたときnullptrを参照していました。 そのためメンバーにアクセスする処理の前にnullチェックを追加して修正します。
gdb のバックトレース