mirror of
https://github.com/dart-lang/sdk
synced 2024-09-05 00:13:50 +00:00
Cast sockets that set _owner and read closedReadEventSent of _NativeSocket
Change-Id: I0d3b24f503dcb167dd039e47228a665ca3d38453 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/262272 Reviewed-by: Lasse Nielsen <lrn@google.com> Commit-Queue: Kallen Tu <kallentu@google.com>
This commit is contained in:
parent
e4a8525d86
commit
446ee14abf
|
@ -21,13 +21,6 @@
|
|||
"Dynamic invocation of '[]'.": 1,
|
||||
"Dynamic invocation of 'toLowerCase'.": 1
|
||||
},
|
||||
"org-dartlang-sdk:///lib/io/secure_server_socket.dart": {
|
||||
"Dynamic update to 'dart.io::_owner'.": 1
|
||||
},
|
||||
"org-dartlang-sdk:///lib/io/secure_socket.dart": {
|
||||
"Dynamic access of 'closedReadEventSent'.": 1,
|
||||
"Dynamic update to 'dart.io::_owner'.": 1
|
||||
},
|
||||
"org-dartlang-sdk:///lib/_internal/js_runtime/lib/js_patch.dart": {
|
||||
"Dynamic invocation of '[]'.": 1
|
||||
},
|
||||
|
|
|
@ -1721,7 +1721,8 @@ class _NativeSocket extends _NativeSocketNativeWrapper with _ServiceObject {
|
|||
external static void _nativeFatal(msg);
|
||||
}
|
||||
|
||||
class _RawServerSocket extends Stream<RawSocket> implements RawServerSocket {
|
||||
class _RawServerSocket extends Stream<RawSocket>
|
||||
implements RawServerSocket, _RawSocketBase {
|
||||
final _NativeSocket _socket;
|
||||
StreamController<RawSocket>? _controller;
|
||||
bool _v6Only;
|
||||
|
@ -1802,12 +1803,15 @@ class _RawServerSocket extends Stream<RawSocket> implements RawServerSocket {
|
|||
}
|
||||
}
|
||||
|
||||
bool get _closedReadEventSent => _socket.closedReadEventSent;
|
||||
|
||||
void set _owner(owner) {
|
||||
_socket.owner = owner;
|
||||
}
|
||||
}
|
||||
|
||||
class _RawSocket extends Stream<RawSocketEvent> implements RawSocket {
|
||||
class _RawSocket extends Stream<RawSocketEvent>
|
||||
implements RawSocket, _RawSocketBase {
|
||||
final _NativeSocket _socket;
|
||||
final _controller = new StreamController<RawSocketEvent>(sync: true);
|
||||
bool _readEventsEnabled = true;
|
||||
|
@ -1990,6 +1994,8 @@ class _RawSocket extends Stream<RawSocketEvent> implements RawSocket {
|
|||
}
|
||||
}
|
||||
|
||||
bool get _closedReadEventSent => _socket.closedReadEventSent;
|
||||
|
||||
void set _owner(owner) {
|
||||
_socket.owner = owner;
|
||||
}
|
||||
|
|
|
@ -266,6 +266,6 @@ class RawSecureServerSocket extends Stream<RawSecureSocket> {
|
|||
}
|
||||
|
||||
void set _owner(owner) {
|
||||
(_socket as dynamic)._owner = owner;
|
||||
(_socket as _RawSocketBase)._owner = owner;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -478,6 +478,13 @@ class _FilterStatus {
|
|||
_FilterStatus();
|
||||
}
|
||||
|
||||
// Interface used by [RawSecureServerSocket] and [_RawSecureSocket] that exposes
|
||||
// members of [_NativeSocket].
|
||||
abstract class _RawSocketBase {
|
||||
bool get _closedReadEventSent;
|
||||
void set _owner(owner);
|
||||
}
|
||||
|
||||
class _RawSecureSocket extends Stream<RawSocketEvent>
|
||||
implements RawSecureSocket {
|
||||
// Status states
|
||||
|
@ -628,8 +635,7 @@ class _RawSecureSocket extends Stream<RawSocketEvent>
|
|||
}
|
||||
// If we are upgrading a socket that is already closed for read,
|
||||
// report an error as if we received readClosed during the handshake.
|
||||
dynamic s = _socket; // Cast to dynamic to avoid warning.
|
||||
if (s._socket.closedReadEventSent) {
|
||||
if ((_socket as _RawSocketBase)._closedReadEventSent) {
|
||||
_eventDispatcher(RawSocketEvent.readClosed);
|
||||
}
|
||||
_socketSubscription
|
||||
|
@ -684,7 +690,7 @@ class _RawSecureSocket extends Stream<RawSocketEvent>
|
|||
int get remotePort => _socket.remotePort;
|
||||
|
||||
void set _owner(owner) {
|
||||
(_socket as dynamic)._owner = owner;
|
||||
(_socket as _RawSocketBase)._owner = owner;
|
||||
}
|
||||
|
||||
int available() {
|
||||
|
|
Loading…
Reference in a new issue