[Unity] il2cpp::vm::PlatformInvoke::MarshalFreeでSIGBARTで落ちる

ヨメレバCSS
オリジナルCSS

Unity5.2.0でiOS向けのデプロイをしたときの現象。

ネイティブのプラグインを呼び出したときに、 il2cpp::vm::PlatformInvoke::MarshalFreeのところでSIGBARTで落ちていました。

ライブラリの関数呼び出し定義で、void型のfunc1を定義するときに

[DllInport("__Internal")]
private static extean void func1();

と書くべきところを

[DllInport("__Internal")]
private static extean string func1();

としてしまっていたため、自動生成されたコードでこのfunc1を処理している部分がchar*型の戻り値を期待していて、それを il2cpp_codegen_marshal_free で解放しようとしていた。

けれど実際はvoidなのでポインタは返らずしんでいたということ。

il2cpp::vm::PlatformInvoke::MarshalFreeはil2cpp_codegen_marshal_free内の処理ですね。

スポンサーリンク
GoogleAdSence レクタングル(大)

シェアする

スポンサーリンク
GoogleAdSence レクタングル(大)