Skip to content

Runtime Error when authenticating with email and password in a Unity WebGL build #191

Open
@duane-nomad

Description

@duane-nomad

Bug report

Describe the bug

When attempting to authenticate a user with username and password in a Unity WebGL build running in a web browser a RuntimeError: null function or function signature mismatch error is thrown and the Unity WebGL app stops

To Reproduce

Steps to reproduce the behavior, please provide code snippets or a repository:

  1. Create a new project in Unity (FWIW I'm using Unity 6000.0.41f1)
  2. Install NuGet for Unity (https://github.com/GlitchEnzo/NuGetForUnity)
  3. Install Supabase (v1.1.1) via NuGet package settings within Unity

Image

  1. Implement flow for intialisation and user authentication via email and password
  2. Build and run on the WebGL platform
  3. Attempt to authenticate the user

Expected behavior

The user is authenticated and no runtime errors are thrown

Screenshots

Callstack of the error displayed in the console:

Browser_mainLoop_scheduler_rAF @ Development.framework.js:5833
Browser_mainLoop_runner @ Development.framework.js:5922
Development.framework.js:4503 RuntimeError: null function or function signature mismatch
    at il2cpp::icalls::mscorlib::System::Runtime::InteropServices::Marshal::PtrToStructure(:54518/long, Il2CppReflectionType*) (http://localhost:54518/Build/Development.wasm)
    at Marshal_PtrToStructure_m235E141E21BFB69A01B07DDDF1702BA7D5723AC3 (Development.wasm:0x58c8d97)
    at Marshal_PtrToStructure_TisRuntimeObject_mAFC160D8333711F9FE85A7C91B1BD048C32A8837_gshared (Development.wasm:0x4c71069)
    at UnityTls_get_NativeInterface_m0B8B1D4A4F73BE68A2E945017CE920053325F1D1 (Development.wasm:0x3f261d6)
    at UnityTls_get_IsSupported_mAC3292C1269D67A455C0D70E878931123D75DE6D (Development.wasm:0x3f26764)
    at MonoTlsProviderFactory_InitializeProviderRegistration_m1D24100D1C54F7529B4432D69EAE8EBCB3116B10 (Development.wasm:0x3f47115)
    at MonoTlsProviderFactory_InitializeInternal_m719BE4475DBBA40EB7E0BBF3C3D65F17791E488A (Development.wasm:0x3f3e3e8)
    at MonoTlsProviderFactory_GetProviderInternal_m08BDCDD3919FBAEDFB32CB5F0876D10E32C147A7 (Development.wasm:0x3f3dc16)
    at MonoWebRequestHandler_CreateWebRequest_mBB805D3B8032C3CB3B2D71E04E3C319F0E627D1F (Development.wasm:0x5200ee4)
    at U3CSendAsyncU3Ed__99_MoveNext_mD015CC1B55C285519224F811D1CA69F527F8F633 (Development.wasm:0x5205c5f)
    at AsyncTaskMethodBuilder_1_Start_TisU3CSendAsyncU3Ed__99_t7F65CEF5874E988C0C5867B0B6EA5E52FBF3DB22_mA4F41AC898AFC342AA04CBC328540329A15BB400_gshared (Development.wasm:0x48da3cd)
    at MonoWebRequestHandler_SendAsync_m218FBC412C4300E40FF988645B1BF648580D5B2F (Development.wasm:0x5204cf8)
    at HttpClientHandler_SendAsync_m024FF40EDC1A14211704DB0DE00BCB7B9E9FD406 (Development.wasm:0x51fffb2)
    at HttpMessageInvoker_SendAsync_m6713036B5D094D1E178CCB6B90975808CE1AEE1C (Development.wasm:0x520adf1)
    at U3CSendAsyncWorkerU3Ed__47_MoveNext_mE32A14C1E715F40E33134DD8478CDFA53F9B0195 (Development.wasm:0x520b147)
    at AsyncTaskMethodBuilder_1_Start_TisU3CSendAsyncWorkerU3Ed__47_tB6556DD755EDCDAD5DC1F1C5F5CA314BA5B282A5_m0B8B43F67B798C7EF2B0D99B5BAC790EB8FC918D_gshared (Development.wasm:0x48d7588)
    at HttpClient_SendAsyncWorker_m705970670309B586A349D3D8E0A6F7FC41866656 (Development.wasm:0x520a7cd)
    at HttpClient_SendAsync_m5C9B076F873C5D2F4E5301937A1AFE3427346E71 (Development.wasm:0x5209f39)
    at HttpClient_SendAsync_m3CDC42E7D95E1A6827E17C613F75DB4A39F06FFD (Development.wasm:0x52099ee)
    at U3CMakeRequestU3Ed__7_MoveNext_m2F4B9E3798068C9C58FC6A52F2B596F6F7C5D7F8 (Development.wasm:0x31bede2)
    at AsyncTaskMethodBuilder_1_Start_TisU3CMakeRequestU3Ed__7_t5BF689D661DF3CAE0D12BB4EC70F7C8B3F9E23E7_mB9D6185572EBB4FFFC7634DBDCD9B77029BC4C77_gshared (Development.wasm:0x48d6f7f)
    at Helpers_MakeRequest_m961141251A91BCEBD8E3B355A87CBEDA727DD15B (Development.wasm:0x31a16ab)
    at U3CMakeRequestU3Ed__6_1_MoveNext_m7067E347F5828EB13A0416E0EC5F33DF6DA2637E_gshared (Development.wasm:0x3870f15)
    at AsyncTaskMethodBuilder_1_Start_TisU3CMakeRequestU3Ed__6_1_t55B4B4061D3D249BE501EAB922EDF75E3880D207_mBAAA7F0F08099E7009475C84EB509CCD4470192A_gshared (Development.wasm:0x48d161a)
    at Helpers_MakeRequest_TisRuntimeObject_mD855B55DAD6FEAC578DCD01D0D310982A79DA401_gshared (Development.wasm:0x56b4fc8)
    at Api_SignInWithEmail_m77270054153C8E9271A822413116CB08C6C2C919 (Development.wasm:0x319f82b)
    at U3CSignInU3Ed__36_MoveNext_m9771E96D7655028FECC455082000CE7F607BDC26 (Development.wasm:0x31b77ba)
    at AsyncTaskMethodBuilder_1_Start_TisU3CSignInU3Ed__36_t28BE094A02A7A323A48F3DB6830C5D1BB7798408_m425D2123AFAD868DB51C6A91DC5C9EEF576E6C0A_gshared (Development.wasm:0x48d5558)
    at Client_SignIn_m954A0D778ED2A737430544AABBD67322B541CA35 (Development.wasm:0x31ac1e0)
    at Client_SignIn_m664F27C781E4A145B1CD69503322610EDC597B49 (Development.wasm:0x31ac057)
    at U3CSignInU3Ed__8_MoveNext_mCE05E0B385DC7F176D0ED6F0E0A0B539C9089FB8 (Development.wasm:0x5e46e92)
    at AsyncTaskMethodBuilder_1_Start_TisRuntimeObject_m4CC6B9A3F0DD032BDFC0B8416CE27980382ED173_gshared (Development.wasm:0x48d230c)
    at SupabaseManager_SignIn_mADEB6B4D04D75C984C1C218C7471A094BFD9CDC9 (Development.wasm:0x5e3e482)
    at U3CSignInU3Ed__11_MoveNext_mDEF6DC68B9DC198BABA7B65A764F1D3D26C322EC (Development.wasm:0x5e9259b)
    at AsyncTaskMethodBuilder_Start_TisRuntimeObject_mEFE065A20533413CD8BB8FAEAF761102588337FB_gshared (Development.wasm:0x422bfd4)
    at UserManager_SignIn_mE026A01CC9C8D3490EBF3950EF827E906D8814E2 (Development.wasm:0x5e910a9)
    at U3COnSignInConfirmButtonPressedU3Ed__21_MoveNext_m2F3F2EEE6C376D6946FDB2110926330970AD2C9E (Development.wasm:0x5e34972)
    at AsyncVoidMethodBuilder_Start_TisRuntimeObject_m3CA145CBB6CFE8B4ADD6148BF98E85899F95DCEA_gshared (Development.wasm:0x423ef7a)
    at LoginUI_OnSignInConfirmButtonPressed_m0911A845BC95537E745C5559F21371298CE5C97E (Development.wasm:0x5e3399b)
    at InvokableCall_Invoke_m6F4828FD2B3E3BBB7AA6EECC2C37FB08538363F4 (Development.wasm:0x54811c2)
    at UnityEvent_Invoke_mFBF80D59B03C30C5FE6A06F897D954ACADE061D2 (Development.wasm:0x5485a48)
    at Button_Press_mEF76F32CD5C01C1D8B00B80BDFC0C6CEEEF2C993 (Development.wasm:0x2883af4)
    at Button_OnPointerClick_mB76B80D7374811C7BBE11DA188E2656904AE5422 (Development.wasm:0x2883bd0)
    at ExecuteEvents_Execute_m512ACDD06180A73819570FED3C2BEE0F0E2DA3F2 (Development.wasm:0x290793e)
    at EventFunction_1_Invoke_m98A8A653E7180305E41F7CFFDDD9D32C63B96FE7_OpenStatic(:54518/EventFunction_1_t297B5C47242D1B98BEC955E2804FA142B43E7927*, Il2CppObject*, BaseEventData_tE03A848325C0AE8E76C6CA15FD86395EBF83364F*, MethodInfo const*) (http://localhost:54518/Build/Development.wasm)
    at ExecuteEvents_Execute_TisRuntimeObject_mDC4455B743BE4A6BA46DD741D0E0AB150FF1209A_gshared (Development.wasm:0x42e4a48)
    at StandaloneInputModule_ReleaseMouse_mC5C3083C356ACD5CD420A58662D99A6CACC5FAF5 (Development.wasm:0x2912284)
    at StandaloneInputModule_ProcessMousePress_m24665E707FEF5C80719847D62A8A8AEABE27C6C5 (Development.wasm:0x291566b)
    at StandaloneInputModule_ProcessMouseEvent_m8A8214EB9286BA31C18F515BCC3349DF740B2BBA (Development.wasm:0x2914b38)
    at StandaloneInputModule_ProcessMouseEvent_mCE1BA96E47D9A4448614CB9DAF5A406754F655DD (Development.wasm:0x29138f2)
LogErrorWithAdditionalInformation @ Development.framework.js:4503
_JS_CallAsLongAsNoExceptionsSeen @ Development.framework.js:4513

System information

  • OS: Windows 10
  • Browser: Chrome Version 135.0.7049.115 (Official Build) (64-bit)
  • Version of supabase-js: Supabase (csharp) v1.1.1
  • Version of Node.js: N/A

Additional context

A couple of links to Unity discussions that have similar error info although not necessarily as part of using Supabase. Adding in case they help.

One suggesting a DLL parameter binding issue: https://discussions.unity.com/t/webgl-runtime-error-null-function-or-function-signature-mismatch/1626888/3
One suggesting HTTP clients simply don't work in WebGL builds: https://discussions.unity.com/t/unitytls-get-nativeinterface-fails-in-webgl/1578017

Also I've tried a few of the suggested Unity settings options in the first link like 'Enable BigInt' to see if they resolve the issue but so far nothing has made any difference.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions