| Index: webkit/plugins/ppapi/ppb_transport_impl.cc
|
| diff --git a/webkit/plugins/ppapi/ppb_transport_impl.cc b/webkit/plugins/ppapi/ppb_transport_impl.cc
|
| index f9d9cc15f31578df38432950e1b575db1082d477..e7779aa3430f39030cbe268ee6c6141296b444ea 100644
|
| --- a/webkit/plugins/ppapi/ppb_transport_impl.cc
|
| +++ b/webkit/plugins/ppapi/ppb_transport_impl.cc
|
| @@ -33,6 +33,8 @@ const char kTcpProtocolName[] = "tcp";
|
|
|
| const int kMinBufferSize = 1024;
|
| const int kMaxBufferSize = 1024 * 1024;
|
| +const int kMinAckDelay = 10;
|
| +const int kMaxAckDelay = 1000;
|
|
|
| int MapNetError(int result) {
|
| if (result > 0)
|
| @@ -170,6 +172,29 @@ int32_t PPB_Transport_Impl::SetProperty(PP_TransportProperty property,
|
| break;
|
| }
|
|
|
| + case PP_TRANSPORTPROPERTY_TCP_NO_DELAY: {
|
| + if (!use_tcp_)
|
| + return PP_ERROR_BADARGUMENT;
|
| +
|
| + if (value.type != PP_VARTYPE_BOOL)
|
| + return PP_ERROR_BADARGUMENT;
|
| + config_.tcp_no_delay = PP_ToBool(value.value.as_bool);
|
| + break;
|
| + }
|
| +
|
| + case PP_TRANSPORTPROPERTY_TCP_ACK_DELAY: {
|
| + if (!use_tcp_)
|
| + return PP_ERROR_BADARGUMENT;
|
| +
|
| + int32_t int_value = value.value.as_int;
|
| + if (value.type != PP_VARTYPE_INT32 || int_value < kMinAckDelay ||
|
| + int_value > kMaxAckDelay) {
|
| + return PP_ERROR_BADARGUMENT;
|
| + }
|
| + config_.tcp_ack_delay_ms = int_value;
|
| + break;
|
| + }
|
| +
|
| default:
|
| return PP_ERROR_BADARGUMENT;
|
| }
|
| @@ -299,7 +324,6 @@ int32_t PPB_Transport_Impl::Close() {
|
|
|
| p2p_transport_.reset();
|
|
|
| -
|
| PluginModule* plugin_module = ResourceHelper::GetPluginModule(this);
|
| if (plugin_module)
|
| plugin_module->GetCallbackTracker()->AbortAll();
|
|
|