クラッシュが1つあります。私はスタックを分析するためにgdbを使用しますが、私は以下の結果を得ました。なぜ2回呼び出されるのですか?
13 0x00007f423c6e9670 in ??()
#14 0x00007f42340496d8 in ??()
#15 0x0000000003cef568 in ??()
#16 0x00000000008da861 in HuffmanEnd()
#17 0x00000000008d4a83 in faacEncClose()
#18 0x00000000004fd797 in RecorderSession::~RecorderSession (this=0x7f423404ea90, __in_chrg=<value optimized out>)
at /root/Desktop/VideoRecoder/2.0/src/videorecorder/RecorderSession.cpp:203
#19 0x00000000004fdae9 in RecorderSession::~RecorderSession (this=0x7f423404ea90, __in_chrg=<value optimized out>)
at /root/Desktop/VideoRecoder/2.0/src/videorecorder/RecorderSession.cpp:203
#20 0x0000000000500d0b in RecorderSession::OnHangup (this=0x7f423404ea90) at /root/Desktop/VideoRecoder/2.0/src/videorecorder/RecorderSession.cpp:295
#21 0x000000000045e083 in CSipPhone::on_call_state (call_id=2, e=<value optimized out>)
わかるように、クラッシュはハフマンエンドで発生します。しかし、なぜ〜RecorderSessionが2回呼び出されたのか分かりませんが、私は以下のようにRecorderSessionオブジェクトを削除するために "delete this"というコードを使用しています。 return 0; }
「これを削除してください」という現象がこの現象を引き起こしますか?
私たちはどのように知っていますか?あなたのコードがどのように見えるかはわかりません。 –
私はあなたのコードで 'を削除する必要があるとは思わない –
とコードは....どこですか? –