зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1307708 - Make the GetKeyState IPDL call sync (it was intr). r=jimm
This should avoid destruction messages from deleting the actor while the intr message is awaiting a response. --HG-- extra : rebase_source : b45e8ffcfe6f63213a289aac874fd43cb71a54ec
This commit is contained in:
Родитель
7f9b3dc8cd
Коммит
2b771634a4
|
@ -160,7 +160,7 @@ parent:
|
|||
|
||||
async ReturnSitesWithData(nsCString[] aSites, uint64_t aCallbackId);
|
||||
|
||||
intr GetKeyState(int32_t aVirtKey)
|
||||
sync GetKeyState(int32_t aVirtKey)
|
||||
returns (int16_t aState);
|
||||
|
||||
intr NPN_SetValue_NPPVpluginRequiresAudioDeviceChanges(bool shouldRegister)
|
||||
|
|
|
@ -2117,7 +2117,7 @@ PMCGetKeyState(int aVirtKey)
|
|||
PluginModuleChild* chromeInstance = PluginModuleChild::GetChrome();
|
||||
if (chromeInstance) {
|
||||
int16_t ret = 0;
|
||||
if (chromeInstance->CallGetKeyState(aVirtKey, &ret)) {
|
||||
if (chromeInstance->SendGetKeyState(aVirtKey, &ret)) {
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3403,19 +3403,19 @@ PluginModuleChromeParent::RecvProfile(const nsCString& aProfile)
|
|||
}
|
||||
|
||||
mozilla::ipc::IPCResult
|
||||
PluginModuleParent::AnswerGetKeyState(const int32_t& aVirtKey, int16_t* aRet)
|
||||
PluginModuleParent::RecvGetKeyState(const int32_t& aVirtKey, int16_t* aRet)
|
||||
{
|
||||
return IPC_FAIL_NO_REASON(this);
|
||||
}
|
||||
|
||||
mozilla::ipc::IPCResult
|
||||
PluginModuleChromeParent::AnswerGetKeyState(const int32_t& aVirtKey,
|
||||
PluginModuleChromeParent::RecvGetKeyState(const int32_t& aVirtKey,
|
||||
int16_t* aRet)
|
||||
{
|
||||
#if defined(XP_WIN)
|
||||
*aRet = ::GetKeyState(aVirtKey);
|
||||
return IPC_OK();
|
||||
#else
|
||||
return PluginModuleParent::AnswerGetKeyState(aVirtKey, aRet);
|
||||
return PluginModuleParent::RecvGetKeyState(aVirtKey, aRet);
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -213,7 +213,7 @@ protected:
|
|||
|
||||
virtual mozilla::ipc::IPCResult RecvProfile(const nsCString& aProfile) override { return IPC_OK(); }
|
||||
|
||||
virtual mozilla::ipc::IPCResult AnswerGetKeyState(const int32_t& aVirtKey, int16_t* aRet) override;
|
||||
virtual mozilla::ipc::IPCResult RecvGetKeyState(const int32_t& aVirtKey, int16_t* aRet) override;
|
||||
|
||||
virtual mozilla::ipc::IPCResult RecvReturnClearSiteData(const NPError& aRv,
|
||||
const uint64_t& aCallbackId) override;
|
||||
|
@ -507,7 +507,7 @@ class PluginModuleChromeParent
|
|||
RecvProfile(const nsCString& aProfile) override;
|
||||
|
||||
virtual mozilla::ipc::IPCResult
|
||||
AnswerGetKeyState(const int32_t& aVirtKey, int16_t* aRet) override;
|
||||
RecvGetKeyState(const int32_t& aVirtKey, int16_t* aRet) override;
|
||||
|
||||
private:
|
||||
virtual void
|
||||
|
|
Загрузка…
Ссылка в новой задаче