Chromium Code Reviews| Index: android_webview/native/aw_message_port_service_impl.cc |
| diff --git a/android_webview/native/aw_message_port_service_impl.cc b/android_webview/native/aw_message_port_service_impl.cc |
| index 0a15d9f44ef8ccc1e8bb24b01c2961124d1a7b4a..0caf92cd3afb770682d0379bf00fa9e5b2d77a82 100644 |
| --- a/android_webview/native/aw_message_port_service_impl.cc |
| +++ b/android_webview/native/aw_message_port_service_impl.cc |
| @@ -150,6 +150,15 @@ void AwMessagePortServiceImpl::ClosePort(JNIEnv* env, jobject obj, |
| message_port_id)); |
| } |
| +void AwMessagePortServiceImpl::ReleaseMessages(JNIEnv* env, jobject obj, |
| + int message_port_id) { |
|
hush (inactive)
2015/03/06 22:32:37
int --> jint
|
| + DCHECK_CURRENTLY_ON(BrowserThread::UI); |
| + BrowserThread::PostTask( |
| + BrowserThread::IO, |
| + FROM_HERE, |
| + base::Bind(&MessagePortProvider::ReleaseMessages, message_port_id)); |
| +} |
| + |
| void AwMessagePortServiceImpl::RemoveSentPorts( |
| const std::vector<int>& sent_ports) { |
| DCHECK_CURRENTLY_ON(BrowserThread::IO); |
| @@ -181,6 +190,8 @@ void AwMessagePortServiceImpl::CreateMessageChannelOnIOThread( |
| int* portId1, |
| int* portId2) { |
| MessagePortProvider::CreateMessageChannel(filter.get(), portId1, portId2); |
| + MessagePortProvider::HoldMessages(*portId1); |
| + MessagePortProvider::HoldMessages(*portId2); |
| AddPort(*portId1, filter.get()); |
| AddPort(*portId2, filter.get()); |
| } |