Fix bug with async plugin methods

This commit is contained in:
Oleg Korshul
2023-11-04 01:06:56 +03:00
parent 6e57f23087
commit 322006352e

View File

@ -1144,12 +1144,12 @@
}
let currentCommand = this.queueCommands.shift();
let runObject = this.runnedPluginsMap[currentCommand.guid];
// send callback
let pluginDataTmp = undefined;
if (!currentCommand.closed)
if (!currentCommand.closed && runObject)
{
pluginDataTmp = new CPluginData();
let pluginDataTmp = new CPluginData();
pluginDataTmp.setAttribute("guid", currentCommand.guid);
if (currentCommand.type === CommandTaskType.Command)
@ -1161,11 +1161,10 @@
{
pluginDataTmp.setAttribute("type", "onMethodReturn");
pluginDataTmp.setAttribute("methodReturnData", returnValue);
runObject.methodReturnAsync = false;
}
let runObject = this.runnedPluginsMap[currentCommand.guid];
if (runObject)
this.sendMessageToFrame(runObject.isConnector ? "" : runObject.frameId, pluginDataTmp);
this.sendMessageToFrame(runObject.isConnector ? "" : runObject.frameId, pluginDataTmp);
}
if (this.queueCommands.length > 0)