Index: ppapi/proxy/ppb_flash_net_connector_proxy.cc |
diff --git a/ppapi/proxy/ppb_flash_net_connector_proxy.cc b/ppapi/proxy/ppb_flash_net_connector_proxy.cc |
index f7279d35761c268d15e5c5dc919e83a78caa3e99..c5fbdc9b99f86d796b93a766c67062f9975fe77f 100644 |
--- a/ppapi/proxy/ppb_flash_net_connector_proxy.cc |
+++ b/ppapi/proxy/ppb_flash_net_connector_proxy.cc |
@@ -26,6 +26,19 @@ void StringToNetAddress(const std::string& str, PP_Flash_NetAddress* addr) { |
memcpy(addr->data, str.data(), addr->size); |
} |
+class AbortCallbackTask : public Task { |
+ public: |
+ AbortCallbackTask(PP_CompletionCallback callback) |
+ : callback_(callback) {} |
+ |
+ virtual void Run() { |
+ PP_RunCompletionCallback(&callback_, PP_ERROR_ABORTED); |
+ } |
+ |
+ private: |
+ PP_CompletionCallback callback_; |
+}; |
+ |
class FlashNetConnector : public PluginResource { |
public: |
FlashNetConnector(const HostResource& resource) |
@@ -36,7 +49,8 @@ class FlashNetConnector : public PluginResource { |
} |
~FlashNetConnector() { |
if (callback_.func) |
- PP_RunCompletionCallback(&callback_, PP_ERROR_ABORTED); |
+ MessageLoop::current()->PostTask(FROM_HERE, |
viettrungluu
2011/05/24 17:39:48
Nit: Our style rules apparently dictate braces for
|
+ new AbortCallbackTask(callback_)); |
} |
// Resource overrides. |