summaryrefslogtreecommitdiffstats
path: root/ppapi/proxy
diff options
context:
space:
mode:
authorpolina@google.com <polina@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-30 21:42:37 +0000
committerpolina@google.com <polina@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-30 21:42:37 +0000
commit917e86adc3f824f518c999dcba20bfd4cbf18a18 (patch)
tree52fe38f61527360231c17a905015066fb5d34bba /ppapi/proxy
parent9ae7b9195f0e06b64664bba52e9cc0e8b3470f56 (diff)
downloadchromium_src-917e86adc3f824f518c999dcba20bfd4cbf18a18.zip
chromium_src-917e86adc3f824f518c999dcba20bfd4cbf18a18.tar.gz
chromium_src-917e86adc3f824f518c999dcba20bfd4cbf18a18.tar.bz2
Add a flag field to PP_CompletionCallback to control if the callback should
always be invoked asynchronously on success or error or skipped if the operation can complete synchronously without blocking. Keep the default behavior as-is until clients update their code. Bump revisions of all interfaces that take callbacks as args. Update browser interface function implementations and C++ layer to force callbacks if sync option is not set. Change ppapi/tests to run tests involving callbacks with both flag options. BUG=79376 TEST=ppapi_tests + bots Review URL: http://codereview.chromium.org/6899055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91205 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/proxy')
-rw-r--r--ppapi/proxy/ppb_audio_proxy.cc2
-rw-r--r--ppapi/proxy/ppb_broker_proxy.cc2
-rw-r--r--ppapi/proxy/ppb_file_chooser_proxy.cc2
-rw-r--r--ppapi/proxy/ppb_file_system_proxy.cc2
-rw-r--r--ppapi/proxy/ppb_flash_menu_proxy.cc2
-rw-r--r--ppapi/proxy/ppb_flash_net_connector_proxy.cc4
-rw-r--r--ppapi/proxy/ppb_graphics_2d_proxy.cc2
-rw-r--r--ppapi/proxy/ppb_surface_3d_proxy.cc2
-rw-r--r--ppapi/proxy/ppb_url_loader_proxy.cc2
9 files changed, 10 insertions, 10 deletions
diff --git a/ppapi/proxy/ppb_audio_proxy.cc b/ppapi/proxy/ppb_audio_proxy.cc
index 22ddddd..76f3046 100644
--- a/ppapi/proxy/ppb_audio_proxy.cc
+++ b/ppapi/proxy/ppb_audio_proxy.cc
@@ -207,7 +207,7 @@ void PPB_Audio_Proxy::OnMsgCreate(PP_Instance instance_id,
return;
// Initiate opening the audio object.
- CompletionCallback callback = callback_factory_.NewCallback(
+ CompletionCallback callback = callback_factory_.NewOptionalCallback(
&PPB_Audio_Proxy::AudioChannelConnected, *result);
int32_t open_error = trusted_audio.object()->OpenTrusted(
audio_config_res, callback.pp_completion_callback());
diff --git a/ppapi/proxy/ppb_broker_proxy.cc b/ppapi/proxy/ppb_broker_proxy.cc
index fd789de..37f8ba0 100644
--- a/ppapi/proxy/ppb_broker_proxy.cc
+++ b/ppapi/proxy/ppb_broker_proxy.cc
@@ -204,7 +204,7 @@ void PPB_Broker_Proxy::OnMsgCreate(PP_Instance instance,
}
void PPB_Broker_Proxy::OnMsgConnect(const HostResource& broker) {
- CompletionCallback callback = callback_factory_.NewCallback(
+ CompletionCallback callback = callback_factory_.NewOptionalCallback(
&PPB_Broker_Proxy::ConnectCompleteInHost, broker);
int32_t result = ppb_broker_target()->Connect(
diff --git a/ppapi/proxy/ppb_file_chooser_proxy.cc b/ppapi/proxy/ppb_file_chooser_proxy.cc
index 38bc058..cda175f 100644
--- a/ppapi/proxy/ppb_file_chooser_proxy.cc
+++ b/ppapi/proxy/ppb_file_chooser_proxy.cc
@@ -194,7 +194,7 @@ void PPB_FileChooser_Proxy::OnMsgCreate(PP_Instance instance,
}
void PPB_FileChooser_Proxy::OnMsgShow(const HostResource& chooser) {
- CompletionCallback callback = callback_factory_.NewCallback(
+ CompletionCallback callback = callback_factory_.NewOptionalCallback(
&PPB_FileChooser_Proxy::OnShowCallback, chooser);
int32_t result = ppb_file_chooser_target()->Show(
diff --git a/ppapi/proxy/ppb_file_system_proxy.cc b/ppapi/proxy/ppb_file_system_proxy.cc
index c6b7caa..b95e0b9 100644
--- a/ppapi/proxy/ppb_file_system_proxy.cc
+++ b/ppapi/proxy/ppb_file_system_proxy.cc
@@ -178,7 +178,7 @@ void PPB_FileSystem_Proxy::OnMsgOpen(const HostResource& host_resource,
if (enter.failed())
return;
- CompletionCallback callback = callback_factory_.NewCallback(
+ CompletionCallback callback = callback_factory_.NewOptionalCallback(
&PPB_FileSystem_Proxy::OpenCompleteInHost, host_resource);
int32_t result = enter.object()->Open(expected_size,
callback.pp_completion_callback());
diff --git a/ppapi/proxy/ppb_flash_menu_proxy.cc b/ppapi/proxy/ppb_flash_menu_proxy.cc
index 0087700..c42c10e 100644
--- a/ppapi/proxy/ppb_flash_menu_proxy.cc
+++ b/ppapi/proxy/ppb_flash_menu_proxy.cc
@@ -162,7 +162,7 @@ void PPB_Flash_Menu_Proxy::OnMsgShow(const HostResource& menu,
const PP_Point& location) {
ShowRequest* request = new ShowRequest;
request->menu = menu;
- CompletionCallback callback = callback_factory_.NewCallback(
+ CompletionCallback callback = callback_factory_.NewOptionalCallback(
&PPB_Flash_Menu_Proxy::SendShowACKToPlugin, request);
EnterHostFromHostResource<PPB_Flash_Menu_API> enter(menu);
diff --git a/ppapi/proxy/ppb_flash_net_connector_proxy.cc b/ppapi/proxy/ppb_flash_net_connector_proxy.cc
index 8a5aa41..ba2c218 100644
--- a/ppapi/proxy/ppb_flash_net_connector_proxy.cc
+++ b/ppapi/proxy/ppb_flash_net_connector_proxy.cc
@@ -265,7 +265,7 @@ void PPB_Flash_NetConnector_Proxy::OnMsgConnectTcp(
const std::string& host,
uint16_t port) {
ConnectCallbackInfo* info = new ConnectCallbackInfo(resource);
- CompletionCallback callback = callback_factory_.NewCallback(
+ CompletionCallback callback = callback_factory_.NewOptionalCallback(
&PPB_Flash_NetConnector_Proxy::OnCompleteCallbackInHost, info);
EnterHostFromHostResource<PPB_Flash_NetConnector_API> enter(resource);
@@ -283,7 +283,7 @@ void PPB_Flash_NetConnector_Proxy::OnMsgConnectTcpAddress(
const HostResource& resource,
const std::string& net_address_as_string) {
ConnectCallbackInfo* info = new ConnectCallbackInfo(resource);
- CompletionCallback callback = callback_factory_.NewCallback(
+ CompletionCallback callback = callback_factory_.NewOptionalCallback(
&PPB_Flash_NetConnector_Proxy::OnCompleteCallbackInHost, info);
PP_Flash_NetAddress net_address;
diff --git a/ppapi/proxy/ppb_graphics_2d_proxy.cc b/ppapi/proxy/ppb_graphics_2d_proxy.cc
index 8027956..0f8a247 100644
--- a/ppapi/proxy/ppb_graphics_2d_proxy.cc
+++ b/ppapi/proxy/ppb_graphics_2d_proxy.cc
@@ -240,7 +240,7 @@ void PPB_Graphics2D_Proxy::OnMsgReplaceContents(
}
void PPB_Graphics2D_Proxy::OnMsgFlush(const HostResource& graphics_2d) {
- CompletionCallback callback = callback_factory_.NewCallback(
+ CompletionCallback callback = callback_factory_.NewOptionalCallback(
&PPB_Graphics2D_Proxy::SendFlushACKToPlugin, graphics_2d);
int32_t result = ppb_graphics_2d_target()->Flush(
graphics_2d.host_resource(), callback.pp_completion_callback());
diff --git a/ppapi/proxy/ppb_surface_3d_proxy.cc b/ppapi/proxy/ppb_surface_3d_proxy.cc
index 053fc01..c0288d0 100644
--- a/ppapi/proxy/ppb_surface_3d_proxy.cc
+++ b/ppapi/proxy/ppb_surface_3d_proxy.cc
@@ -177,7 +177,7 @@ void PPB_Surface3D_Proxy::OnMsgCreate(PP_Instance instance,
}
void PPB_Surface3D_Proxy::OnMsgSwapBuffers(const HostResource& surface_3d) {
- CompletionCallback callback = callback_factory_.NewCallback(
+ CompletionCallback callback = callback_factory_.NewOptionalCallback(
&PPB_Surface3D_Proxy::SendSwapBuffersACKToPlugin, surface_3d);
EnterHostFromHostResource<PPB_Surface3D_API> enter(surface_3d);
diff --git a/ppapi/proxy/ppb_url_loader_proxy.cc b/ppapi/proxy/ppb_url_loader_proxy.cc
index 304e0e1..b2d6276 100644
--- a/ppapi/proxy/ppb_url_loader_proxy.cc
+++ b/ppapi/proxy/ppb_url_loader_proxy.cc
@@ -517,7 +517,7 @@ void PPB_URLLoader_Proxy::OnMsgReadResponseBody(
// TODO(brettw) have a way to check for out-of-memory.
info->read_buffer.resize(bytes_to_read);
- CompletionCallback callback = callback_factory_.NewCallback(
+ CompletionCallback callback = callback_factory_.NewOptionalCallback(
&PPB_URLLoader_Proxy::OnReadCallback, info);
EnterHostFromHostResource<PPB_URLLoader_API> enter(loader);