App crash after calling custom plugin method

Issue Description:
When calling a plugin method from the app, the app proceeds to crash and quit immediately.

Steps to reproduce:
Launch app

Impact for my app: [low, mid, high, show-stopper]
Show-stopper

Do you currently have a workaround?
No.

Logs:
OverwolfLogs_2020-11-20_17-46-50.zip (263.7 KB)
Error occured at 17:46.

Extra information
DLL is 64 bit

2020-11-20 15:41:58,475 (ERROR) Failed to execute Exists on FileOperations with 3 arguments. details: arguments are not match

That’s odd, the signature for the method is:
public void Exists(string appName, int appId, string path, Action<object> callback)

The call is:
this.plugin.Exists(APP_NAME, APP_ID, path, result => { /* … */ });

Any idea what’s wrong?

To further add, that timestamp is wrong.

You can send us your plugin for analysis, other than that, no, I cannot tell what’s wrong.

Here’s the plugin
r2io.zip (4.8 KB)

And the app:
build.opk (2.0 MB)

It appears you are passing a complex object (maybe upon a crash) - that Overwolf is having a hard time serializing. When you return an ERROR - see if you can set the data part to a simple object (the error Message string?)

This is the quick workaround - let me know if it works for you.

Thanks

Sadly no luck here.

Here’s the updated plugin
r2io.zip (4.9 KB)

Here’s the latest log (~8:17PM onwards)
OverwolfLogs_2020-11-21_20-18-24.zip (296.0 KB)

Hi,
Again - if you have something like this:
try {
} catch (Exception ex) {
callback(ex);
}

change it to something like this:
try {
} catch (Exception ex) {
callback(ex.Message); // <~~~~~~
}

Ah I didn’t add that to one of the overloading methods.
Everything appears to work fine now.
Thanks!

2 Likes