Revert "Pulled a significant portion of Socket implementation into BaseSocket in order to prepare for the synchronous socket impementations which will also use these common methods."
This reverts commit 0422920142.
Revert "Updated incorrect call to Write in process_win.cc"
This reverts commit 9e1435148b.
Revert "Fixed incorrect call to Write from process_win.cc"
This reverts commit 11dcab2bed3c9ec8ec76bc200206ac202a4a5681.
Fixed incorrect call to Write from process_win.cc
BUG=
Review-Url: https://codereview.chromium.org/2791163004 .
Fix observatory tests broken by running dartfmt due to line and column changes.
Temporarily reverted formatting for evaluate_activation_test.dart as dartfmt doesn't yet handle multitests.
BUG=
R=johnmccutchan@google.com
Review-Url: https://codereview.chromium.org/2759973004 .
I've omitted files where the formatter output is significantly uglier
than the original code and I'll send those files in a separate CL
with options for how to make the code look reasonable while still
taking advantage of the formatter.
BUG=
R=johnmccutchan@google.com
Review-Url: https://codereview.chromium.org/2751423005 .
socket.port can throw an exception. The error from the
exception, if there is one, has to go to the completer,
not be thrown up the stack, otherwise it may go to the
enclosing Zone rather than e.g. a try ... catch around
await Socket.connetc().
This is a possible fix for the issue below, but it is
tough to say because I don't have a reliable repro.
related #27440R=asiva@google.com
Review URL: https://codereview.chromium.org/2426413006 .
Allow members of patch classes to be annotated with @patch. The VM
ignores the annotation. I simply replaces the original method
if the name matches, or reports an error if field names match.
Adding a bit is_patched to members to do more checking remains a
TODO. There are currently no unused bits available, and I don’t want
to increase the size of Function objects for this.
BUG=
R=asiva@google.com
Review URL: https://codereview.chromium.org/2230383003 .
Annotate patch classes and top-level patch functions with @patch
instead of the pseudo-keyword patch. This allows the analyzer
to read patch files, and matches the syntax that dart2js uses.
The deprecated syntax is still supported, but a warning is printed when detected.
BUG=
Review URL: https://codereview.chromium.org/2220883004 .
Previously, Socket::ListInterfaces failed to set the os_error out
parameter causing a crash in the caller. This change sets an error here.
I've also added NetworkInterface.listSupported, which returns false on
Android, and true everywhere else. ifaddrs.h continues not to exist in
the NDK, so in order to support NetworkInterface.list, we'd have to
reimplement it, or find a suitable reimplementation somewhere.
related #26329R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org/1916223003 .
Fixes#25724
Fixes Florian Loitsch's emailed request (get rid of k prefix on constants).
- Rename ServiceExtensionResponse constants to not have a 'k' prefix.
- Provide more explanation on how to invoke service extensions (they require an 'isolateId' parameter).
- Require extension method names to begin with "ext." and recommend the template: "ext.package.command" to avoid conflicts with other packages.
R=rmacnak@google.com
Review URL: https://codereview.chromium.org/1680593004 .
Move stopwatch so that we will only ever need one instance
Add utility functions for doing reads and writes
The only functional change here is that I say that an except is a read
of one byte, which also updates the readcount. I think this is just as
correct as what we did before.
BUG=
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//1320023008 .
The current implementation only has information about tcp and udp
sockets, and we explicitly do not track internal and pipe uses of
_NativeSockets.
The testing of this is done through the service layer, which is the end user of
this.
BUG=
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//1323943003 .
The checking of the closed state was not present when dealing
with the properties port, remotePort, address and remoteAddress
on RawSocket and Socket. Then now all throw SocketException when
the RawSocket or Socket is closed.
* Calling port on a RawSocket would return the port even if it
was closed
* Calling remotePort, address and remoteAddress did not check for
OSError
* Calling remotePort, address and remoteAddress on a closed
RawSocket caused syscalls using the already closed fd, which
might also have been re-allocated already.
* Calling port, remotePort, address and remoteAddress on a closed
Socket caused null pointer exception
R=ajohnsen@google.com
Correctly check for errors when getting remote address and port
BUG=
Review URL: https://codereview.chromium.org//984403004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@44319 260f80e4-7a28-3924-810f-c04153c831b5
An invisible function is hidden from stack traces, will not be enumerated
by mirrors, and cannot be directly invoked by mirrors. Note that private
classes remain accessible.
Fix a few internal dart:io functions that should be private.
Fix bug where mirrors would enumerate top-level invisible functions.
Mark observatory test that was using such private functions through
mirrors as failing.
BUG=http://dartbug.com/15274R=hausner@google.com
Review URL: https://codereview.chromium.org//816353012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43019 260f80e4-7a28-3924-810f-c04153c831b5
This CL includes fixes for the following issues:
a) The event handler created listening socket metadata (values of a hashtable
indexed by filedescriptor) sometimes as SocketData and sometimes as
ListeningSocketData depending whether the socket has been listened to or not.
This was very buggy, in particular because multiple isolates can have a
reference to the same server socket in different states (opened, listened,
closed).
=> This should be fixed by sending the file descriptior typeMask always to the
eventhandler.
b) A server socket cloned via the ServerSocketReference mechanism, opens a
receive port for sending (fd, address, port) to isolates/... which want to
create a server socket from the reference.
This receive port was not closed properly when calling only close() (and not
listening first).
=> This should be fixed by closing this receiveport on the ServerSocket.close()
call as well.
c) It was assumed in the event handler that a close command needs to have the
Dart_Port in a hash table. But this is only the case if the user actually
listened to the ServerSocket. Otherwise the event handler does not know about
the server socket. This caused a NULL dereference which resulted in a SEGFAULT.
=> This should be fixed by checking if the Dart_Port is in the hashmap of the
ListeningSocketData or not.
d) Too many bits were considered when extracting token count in C++ code.
The CL includes a regression test which should trigger these issues.
BUG=21384,21383
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//665823007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41276 260f80e4-7a28-3924-810f-c04153c831b5