We have a sporadic issue with loading a plugin DLL. For some users the DLL will not load up properly.
We are using a custom plugin DLL with several supported functions (Let’s say funcA, funcB, funcC).
We have detected cases where the DLL is loading but not all functions are available (only funcA) and the available function execution get timed out.
It’s loading properly in our tests and for most users. But we have detected an issue where the plugin will not load properly for some users - and when it doesn’t, it never will for them (consistent per user).
The full problematic scenario that we see is this:
- We want to use funcA from the plugin
- We try to load the plugin using overwolf.extensions.current.getExtraObject
- After 5 seconds that we don’t get a response, we time out and retry
- We again try to load the plugin using overwolf.extensions.current.getExtraObject
- Success, but when we print the object functions we see that some functions are missing (funcA is there, but funcB and funcC that should be there are not there).
- We try to use funcA
- We are not getting response after 10 seconds and time out
(see relevant logs with the tag [IOPlugin] in outplayed/bacground.log)
It does work as expected from our tests and we are unable to find what might be the issue for those users.
- In the Overwolf Doc - it says that we only need to provide x64 DLL - maybe we need to provide x86?
- For all cases we have checked it’s always the same - first load gets time out, then we load again and succeed but the same functions are missing.
- Maybe we are using .NET version or something that is not available for the users?
- We are not getting any callback for the first overwolf.extensions.current.getExtraObject - it just left hanged it seems
- It seems to happen more for Win7 users - but not just, also some win10 cases
We have added many logs and collected many logs but can’t seems to find the cause.
Any help will be greatly appreciated.
We are using this .NET framework when building the DLL
We build x64 only.
(Other cases can be provided if needed)