This can only happen due to an error in WK/WKPH communication code. We already have early return for those, but debug output would make investigating problems easier.
Created attachment 51112 [details] proposed patch
Comment on attachment 51112 [details] proposed patch > + LOG_ERROR("NetscapePluginInstanceProxy::evaluate: local object %u doesn't exist."); You used "%u" but forgot to pass a number. Every time!
Created attachment 51115 [details] proposed patch Note to self: don't build and test in 32 bit when changing OOP code.
Comment on attachment 51115 [details] proposed patch > + LOG_ERROR("NetscapePluginInstanceProxy::evaluate: local object %u doesn't exist.", objectID); To be pedantic, %u is for printing values of type unsigned. Since objectID is of type uint32_t the correct format string is: ... object " PRIu32 " doesn't ... Of course, I'm not really sure that uint32_t is better than unsigned here. And this can probably land as-is, but it's an example of why I think types like uint32_t aren't all that great as abstractions. r=me
Committed revision 56247. If I'm not mistaken, PRIu32 would only be necessary for 16-bit platforms, so landed as is.