summaryrefslogtreecommitdiffstats
path: root/chrome/common/ipc_sync_message.cc
diff options
context:
space:
mode:
authorjcampan@google.com <jcampan@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-08-12 01:25:41 +0000
committerjcampan@google.com <jcampan@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-08-12 01:25:41 +0000
commitd65cab7ac310ea12c5d946ff40242a243ce911da (patch)
treefe3eaa4a4e6f14a7416c4b4da351e18cd34d34b2 /chrome/common/ipc_sync_message.cc
parent1a48f315b0ca5c26c4446070edfb5842ed06c8c7 (diff)
downloadchromium_src-d65cab7ac310ea12c5d946ff40242a243ce911da.zip
chromium_src-d65cab7ac310ea12c5d946ff40242a243ce911da.tar.gz
chromium_src-d65cab7ac310ea12c5d946ff40242a243ce911da.tar.bz2
Enabling sync_channel in the browser to allow accessibility code making blocking calls. This replaces my previous CL that was somehow duplicating some of these functionalities.
BUG=None TEST=Run the unit tests. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@691 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/ipc_sync_message.cc')
-rw-r--r--chrome/common/ipc_sync_message.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/chrome/common/ipc_sync_message.cc b/chrome/common/ipc_sync_message.cc
index 43d6d5e..8dc75c4 100644
--- a/chrome/common/ipc_sync_message.cc
+++ b/chrome/common/ipc_sync_message.cc
@@ -38,6 +38,8 @@ namespace IPC {
uint32 SyncMessage::next_id_ = 0;
#define kSyncMessageHeaderSize 4
+// A dummy handle used by EnableMessagePumping.
+HANDLE dummy_event = ::CreateEvent(NULL, TRUE, TRUE, NULL);
SyncMessage::SyncMessage(
int32 routing_id,
@@ -63,6 +65,11 @@ MessageReplyDeserializer* SyncMessage::GetReplyDeserializer() {
return rv;
}
+void SyncMessage::EnableMessagePumping() {
+ DCHECK(!pump_messages_event_);
+ set_pump_messages_event(dummy_event);
+}
+
bool SyncMessage::IsMessageReplyTo(const Message& msg, int request_id) {
if (!msg.is_reply())
return false;