| Index: runtime/bin/socket.cc
|
| diff --git a/runtime/bin/socket.cc b/runtime/bin/socket.cc
|
| index d9c20e7439305bfd0057e3b40d279b80d441678b..4fbdf8b6bacafe5865f1aa4128d5f471df791e1c 100644
|
| --- a/runtime/bin/socket.cc
|
| +++ b/runtime/bin/socket.cc
|
| @@ -445,6 +445,28 @@ void FUNCTION_NAME(Socket_NewServicePort)(Dart_NativeArguments args) {
|
| }
|
|
|
|
|
| +void FUNCTION_NAME(Socket_SetNoDelay)(Dart_NativeArguments args) {
|
| + Dart_EnterScope();
|
| + Dart_Handle socket_obj = Dart_GetNativeArgument(args, 0);
|
| + intptr_t socket = 0;
|
| + Dart_Handle err = Socket::GetSocketIdNativeField(socket_obj, &socket);
|
| + if (Dart_IsError(err)) {
|
| + Dart_SetReturnValue(args, Dart_NewBoolean(false));
|
| + } else {
|
| + Dart_Handle enabled_obj = Dart_GetNativeArgument(args, 1);
|
| + bool enabled;
|
| + err = Dart_BooleanValue(enabled_obj, &enabled);
|
| + if (Dart_IsError(err)) {
|
| + Dart_SetReturnValue(args, Dart_NewBoolean(false));
|
| + } else {
|
| + bool result = Socket::SetNoDelay(socket, enabled);
|
| + Dart_SetReturnValue(args, Dart_NewBoolean(result));
|
| + }
|
| + }
|
| + Dart_ExitScope();
|
| +}
|
| +
|
| +
|
| Dart_Handle Socket::SetSocketIdNativeField(Dart_Handle socket, intptr_t id) {
|
| return Dart_SetNativeInstanceField(socket, kSocketIdNativeField, id);
|
| }
|
|
|