| 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) {
|
| + 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());
|
| }
|
|
|