Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2142)

Unified Diff: content/renderer/pepper/pepper_plugin_delegate_impl.cc

Issue 12220050: Provide a way to disable Nagle's algorithm on Pepper TCP sockets. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Actually export v0.5 interface, and add thunk for it. Fix unit-test and add missing IsConnected che… Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/renderer/pepper/pepper_plugin_delegate_impl.cc
diff --git a/content/renderer/pepper/pepper_plugin_delegate_impl.cc b/content/renderer/pepper/pepper_plugin_delegate_impl.cc
index 5fdd1392da00cd622959c883f7fe56887373d50f..5568d0a52d5a409bfc5969504f7f146e2d89c7f0 100644
--- a/content/renderer/pepper/pepper_plugin_delegate_impl.cc
+++ b/content/renderer/pepper/pepper_plugin_delegate_impl.cc
@@ -1175,14 +1175,22 @@ void PepperPluginDelegateImpl::TCPSocketWrite(uint32 socket_id,
}
void PepperPluginDelegateImpl::TCPSocketDisconnect(uint32 socket_id) {
- // There are no DCHECK(tcp_sockets_.Lookup(socket_id)) because it
- // can be called before
- // TCPSocketConnect/TCPSocketConnectWithNetAddress is called.
+ // There is no DCHECK(tcp_sockets_.Lookup(socket_id)) because this method
+ // can be called before TCPSocketConnect or TCPSocketConnectWithNetAddress.
render_view_->Send(new PpapiHostMsg_PPBTCPSocket_Disconnect(socket_id));
if (tcp_sockets_.Lookup(socket_id))
tcp_sockets_.Remove(socket_id);
}
+void PepperPluginDelegateImpl::TCPSocketSetBoolOption(
+ uint32 socket_id,
+ PP_TCPSocketOption_Private name,
+ bool value) {
+ DCHECK(tcp_sockets_.Lookup(socket_id));
+ render_view_->Send(
+ new PpapiHostMsg_PPBTCPSocket_SetBoolOption(socket_id, name, value));
+}
+
void PepperPluginDelegateImpl::RegisterTCPSocket(
webkit::ppapi::PPB_TCPSocket_Private_Impl* socket,
uint32 socket_id) {
@@ -1433,6 +1441,8 @@ bool PepperPluginDelegateImpl::OnMessageReceived(const IPC::Message& message) {
OnTCPSocketSSLHandshakeACK)
IPC_MESSAGE_HANDLER(PpapiMsg_PPBTCPSocket_ReadACK, OnTCPSocketReadACK)
IPC_MESSAGE_HANDLER(PpapiMsg_PPBTCPSocket_WriteACK, OnTCPSocketWriteACK)
+ IPC_MESSAGE_HANDLER(PpapiMsg_PPBTCPSocket_SetBoolOptionACK,
+ OnTCPSocketSetBoolOptionACK)
IPC_MESSAGE_HANDLER(PpapiMsg_PPBTCPServerSocket_ListenACK,
OnTCPServerSocketListenACK)
IPC_MESSAGE_HANDLER(PpapiMsg_PPBTCPServerSocket_AcceptACK,
@@ -1495,6 +1505,16 @@ void PepperPluginDelegateImpl::OnTCPSocketWriteACK(uint32 plugin_dispatcher_id,
socket->OnWriteCompleted(succeeded, bytes_written);
}
+void PepperPluginDelegateImpl::OnTCPSocketSetBoolOptionACK(
+ uint32 plugin_dispatcher_id,
+ uint32 socket_id,
+ bool succeeded) {
+ webkit::ppapi::PPB_TCPSocket_Private_Impl* socket =
+ tcp_sockets_.Lookup(socket_id);
+ if (socket)
+ socket->OnSetOptionCompleted(succeeded);
+}
+
void PepperPluginDelegateImpl::OnTCPServerSocketListenACK(
uint32 plugin_dispatcher_id,
PP_Resource socket_resource,

Powered by Google App Engine
This is Rietveld 408576698