Android のネイティブ アプリで segfault をデバッグしようとしています。GDB は以下を示します。
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 5200]
0xbfcc6744 in ?? ()
(gdb) bt
#0 0xbfcc6744 in ?? ()
#1 0x5cfb5458 in WWMath::unProject (x=2.1136094475592566, y=472.2994384765625, z=0, mvpMatrix=@0x0,
viewport=@0x0, result=@0x0) at jni/src/core/util/WWMath.cpp:118
#2 0x00000000 in ?? ()
良いスタックを手に入れることは可能ですか?または、スタックが破損した場所を見つけますか?
UPD: 言及された関数は参照を取ります:
bool WWMath::unProject(double x, double y, double z, const Matrix &mvpMatrix,
const Rect& viewport, Vec4& result)
単純なローカル変数への参照が最後の引数として渡されます。
Vec4 far, near;
if (!unProject(x, y, 0, tMvp, viewport, near))