Ryan Macnak
3e3f31b808
Reapply "[vm] Annotate longjmp-like functions with DART_NORETURN."
...
Fix repeated annoation on dart::bin::Platform::Exit.
Bug: https://github.com/dart-lang/sdk/issues/35224
Change-Id: I360c5b0bb3bb8b8f1688ad3cb6a8ad874bce56dc
Reviewed-on: https://dart-review.googlesource.com/c/86262
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-12-06 19:09:06 +00:00
Ryan Macnak
bb791ff34d
Revert "[vm] Annotate longjmp-like functions with DART_NORETURN."
...
This reverts commit 27907fed2d .
Reason for revert: Windows build
Original change's description:
> [vm] Annotate longjmp-like functions with DART_NORETURN.
>
> Bug: https://github.com/dart-lang/sdk/issues/35224
> Change-Id: Ibbcf51cc42dd193cbd96fb7111a1e45cd9c97998
> Reviewed-on: https://dart-review.googlesource.com/c/85860
> Reviewed-by: Martin Kustermann <kustermann@google.com >
TBR=kustermann@google.com ,rmacnak@google.com
Change-Id: Iba775ae382a41ef75f91c7097a0f042abaa12c40
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: https://github.com/dart-lang/sdk/issues/35224
Reviewed-on: https://dart-review.googlesource.com/c/86140
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-12-05 01:50:33 +00:00
Ryan Macnak
27907fed2d
[vm] Annotate longjmp-like functions with DART_NORETURN.
...
Bug: https://github.com/dart-lang/sdk/issues/35224
Change-Id: Ibbcf51cc42dd193cbd96fb7111a1e45cd9c97998
Reviewed-on: https://dart-review.googlesource.com/c/85860
Reviewed-by: Martin Kustermann <kustermann@google.com >
2018-12-05 01:37:04 +00:00
Vyacheslav Egorov
040ef6aabb
[gardening] Lower core rlimit to 0 if test is expected to crash.
...
We do not archive core dumps generated by tests that are expected
to crash - so there is no need to generate those dumps.
It seems that generating core dumps is very slow on Mac and causes
timeouts.
Fixes #35275
Remove Timeout expectations from Crashing tests
Change-Id: I36c89fd583a6a94521560544163f02414cbbf41a
Reviewed-on: https://dart-review.googlesource.com/c/85680
Commit-Queue: Vyacheslav Egorov <vegorov@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2018-11-30 11:15:06 +00:00
Zach Anderson
fe96de2858
Revert "Restore console to original state on VM exit. Fixes issue #30318."
...
This reverts commit c9700040c3 .
Revert "[vm] Fix Fuchsia's Platform::Save/RestoreConsoleConfiguration."
This reverts commit 365f7b5a8b .
Reason for revert: newlines not printed correctly on Windows after
spawning a Dart VM process.
fixes #32172
Change-Id: I155752370bed7798fe91defdc61ccfe9f666b725
Reviewed-on: https://dart-review.googlesource.com/41840
Reviewed-by: Zach Anderson <zra@google.com >
2018-02-15 16:33:41 +00:00
Ben Konyi
c9700040c3
Restore console to original state on VM exit. Fixes issue #30318 .
...
Change-Id: I31b5da600ed5091cd788cde42b72e2fb910fe03a
Reviewed-on: https://dart-review.googlesource.com/39843
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Zach Anderson <zra@google.com >
2018-02-08 21:56:57 +00:00
Zachary Anderson
e2bce948ed
[dart:io] Adds Platform.operatingSystemVersion
...
fixes #30018
R=rmacnak@google.com
Review-Url: https://codereview.chromium.org/3006873002 .
2017-09-01 22:08:48 -07:00
Zachary Anderson
ac16656161
Remove MIPS support
...
R=asiva@google.com
Review-Url: https://codereview.chromium.org/2858623002 .
2017-06-22 08:49:22 -07:00
Zachary Anderson
07725f3dfa
[Fuchsia] Fix Platform.executable and Platform.resolvedExecutable
...
R=rmacnak@google.com
Review-Url: https://codereview.chromium.org/2941873002 .
2017-06-15 09:05:54 -07:00
Zach Anderson
bc923bed16
[dart:io] Reland: Adds Platform.localeName
...
The Mac OS build broke because a typedef wasn't added until 10.12.
related #29126
Review-Url: https://codereview.chromium.org/2786183003 .
2017-03-30 13:51:46 -07:00
Zachary Anderson
e75df3cce3
Revert "[dart:io] Adds Platform.localeName"
...
This reverts commit ae6d854ec6 .
The build failed on the mac build bots. Need to investigate.
Review-Url: https://codereview.chromium.org/2791453002 .
2017-03-30 13:35:02 -07:00
Zachary Anderson
ae6d854ec6
[dart:io] Adds Platform.localeName
...
related #29126
R=fschneider@google.com
Review-Url: https://codereview.chromium.org/2785073002 .
2017-03-30 13:31:11 -07:00
Zach Anderson
b3093ecee6
[dart:io] Move Platform.ansiSupported to {Stdin,Stdout}.supportsAnsiEscapes
...
On Windows, some Windows 10 builds support only ANSI output, but not
input, so these need to be separated.
I'm also improving the detection on Mac and Linux to avoid hardcoding
the result. Instead, supportsAnsiEscapes will be true if isatty() and
the TERM environment variable contains the string 'xterm'.
related #28614
R=lrn@google.com
Review-Url: https://codereview.chromium.org/2753233002 .
2017-03-17 12:35:36 -07:00
Zach Anderson
a8bf498e56
[dart:io] Adds Platform.ansiSupported
...
This is so that flutter_tool can determine whether it can print
ANSI codes to the terminal on windows.
fixes #28614,#28984
R=asiva@google.com
Review-Url: https://codereview.chromium.org/2739683005 .
2017-03-15 08:51:50 -07:00
Zachary Anderson
479a97b129
clang-format runtime/bin
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org/2480793002 .
2016-11-04 12:30:56 -07:00
Zachary Anderson
103881d01c
Make header include guards great again
...
i.e. #ifndef VM_WHATEVER -> #ifndef RUNTIME_VM_WHATEVER
This lets us remove a hack from the PRESUBMIT.py script that existed
for reasons that are no longer valid, and sets us up to add some
presubmit checks for the GN build.
R=asiva@google.com , rmacnak@google.com
Review URL: https://codereview.chromium.org/2450713004 .
2016-10-26 00:26:03 -07:00
Jason Simmons
7eb43c2134
Return a null Platform.executable and resolvedExecutable on Android
...
See https://github.com/flutter/flutter/issues/3648
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org/1953333002 .
2016-05-06 14:29:53 -07:00
Zachary Anderson
1336e6149f
Search for a native extension for the host architecture
...
R=iposva@google.com
Review URL: https://codereview.chromium.org/1896203002 .
2016-04-20 08:02:16 -07:00
Zachary Anderson
078d89ef5c
Fix dangling pointer
...
The resolved executable path is returned to the static in Platform as
a scope allocated string. This change strdups it when it is cached in
a static for return on subsequent calls. Previously, the memory would
be deallocated on exit from the scope.
fixes #26031
R=asiva@google.com
Review URL: https://codereview.chromium.org/1813943004 .
2016-03-18 08:34:23 -07:00
Zachary Anderson
45661a7091
Cleanup in //runtime/bin
...
R=iposva@google.com
Review URL: https://codereview.chromium.org/1800863002 .
2016-03-16 10:01:00 -07:00
Zachary Anderson
c75a817ee0
Fixes some memory leaks in //runtime/bin
...
Also some style cleanups.
Decided to fix these leaks by using Dart_ScopeAllocate
instead of malloc and new. Leaks are noted in the CL.
I haven't finished looking over all the code in
//runtime/bin yet, but this CL was getting big.
Review URL: https://codereview.chromium.org/1781883002 .
2016-03-14 11:08:52 -07:00
Ivan Posva
e651452759
- Make sure that externals are patched for dart2js.
...
- Remove unneeded native entry points.
BUG=
Review URL: https://codereview.chromium.org/1535743002 .
2015-12-17 08:26:07 -08:00
Zachary Anderson
3563dc0fb0
Use ExitProcess on Windows.
...
Even after joining threads, it is still possible for the exit code to be
polluted. NaCL uses ExitProcess to avoid this problem:
https://code.google.com/p/chromium/codesearch#chromium/src/native_client/src/shared/platform/win/nacl_exit.c
This change also cleans up thread local storage for the last Thread.
BUG=
R=iposva@google.com
Review URL: https://codereview.chromium.org/1410293006 .
2015-10-29 23:35:46 -07:00
Søren Gjesse
c05c8c6606
Revert change to Platform.excutable and add Platform.resolvedExecutable
...
The change to Platform.excutable in
e03ab17437 was a breaking change and it
has been reverted.
A new getter Platform.resolvedExecutable has been added to provide the
the fully qualified path of the executable.
BUG=https://github.com/dart-lang/sdk/issues/16994
R=lrn@google.com , kustermann@google.com , len@google.com
Review URL: https://codereview.chromium.org//1180623006 .
2015-06-15 10:13:21 +02:00
Søren Gjesse
e03ab17437
Make Platform.executable return the fully qualified path of the executable
...
BUG=http://dartbug.com/16994
R=kustermann@google.com , lrn@google.com
Review URL: https://codereview.chromium.org//1145053002
2015-05-20 13:14:51 +02:00
johnmccutchan@google.com
172baa03ff
Service isolate rework take 2
...
Review URL: https://codereview.chromium.org//889443002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43306 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 18:31:27 +00:00
johnmccutchan@google.com
db271b0477
Revert r43217, r43215, r43208, r43207, and r43202.
...
Reverting because of some isolate spawn issues (on Windows, and pub bots).
Review URL: https://codereview.chromium.org//867113003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43219 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-27 22:56:18 +00:00
johnmccutchan@google.com
66aa470fc6
* Create vm-service isolate at Dart_Initialize time.
...
* Remove Service create callback.
* Simplify creation of service isolate.
* Creation is done on thread pool.
* Use vm-service isolate for loading in standalone embedder.
* Remove import of dart:io from builtin library.
performance changes:
no service isolate:
$ ./tools/test.py -m release
Test configuration: none_vm_release_ia32
[01:27 | 100% | +12363 | - 0]
$ ./tools/test.py -m release
Test configuration: none_vm_release_ia32
[01:27 | 100% | +12363 | - 0]
always start service isolate (as a thread pool task):
$ ./tools/test.py -m release
Test configuration: none_vm_release_ia32
[01:45 | 100% | +12363 | - 0]
$ ./tools/test.py -m release
Test configuration: none_vm_release_ia32
[01:44 | 100% | +12363 | - 0]
service does I/O (calls to Dart_LoadScript block until service is running):
$ ./tools/test.py -m release
Test configuration: none_vm_release_ia32
[01:55 | 100% | +12363 | - 0]
$ ./tools/test.py -m release
Test configuration: none_vm_release_ia32
[01:55 | 100% | +12363 | - 0]
R=asiva@google.com
Review URL: https://codereview.chromium.org//584023004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43202 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-27 19:45:48 +00:00
ajohnsen@google.com
0f52be7f63
Make std* blocking file-descriptors.
...
This will most likely be a performance regression when piping, that
we'll have to look into in the future (copying data through
message-passing).
BUG=
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//154273003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32715 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-17 10:06:35 +00:00
ajohnsen@google.com
b71e57617e
Always mark stdout and stderr as blocking on exit.
...
This is required by some shell systems, such as Emacs.
BUG=https://code.google.com/p/dart/issues/detail?id=14301
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//59393003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29895 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-05 11:57:52 +00:00
ajohnsen@google.com
db94aeca89
Always mark stdout as blocking when using 'print'.
...
BUG=http://code.google.com/p/dart/issues/detail?id=13712
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//25465002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28081 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-01 09:05:54 +00:00
whesse@google.com
9de122a462
Add Platform.packageRoot and Platform.executableArguments to dart:io.
...
BUG=
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//22999033
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26432 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-21 15:21:55 +00:00
sgjesse@google.com
a1158d6c50
Make the values of Platform.executable and Platform.script available to all isolates
...
BUG=http://dartbug.com/12258
R=iposva@google.com
Review URL: https://codereview.chromium.org//22565003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25913 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-08 07:19:21 +00:00
smok@google.com
ebbc2020a2
Put everything in runtime/bin into '::dart::bin' namespace.
...
Review URL: https://codereview.chromium.org//14341015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@22032 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-25 14:22:30 +00:00
ager@google.com
8a14c1c319
Use FormatMessageW for Windows error messages to handle internationalized messages correctly.
...
R=sgjesse@google.com
BUG=dartbug.com/6986
Review URL: https://codereview.chromium.org//11558012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16041 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 14:39:21 +00:00
ager@google.com
28b43144e5
Update dart:io to convert strings between UTF8 and current code page
...
when interacting with the system.
What we get from and need to hand to the VM is utf8. What we
get from and need to hand to the system is in the current
code page.
R=sgjesse@google.com
BUG=
Review URL: https://codereview.chromium.org//11275281
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@14851 260f80e4-7a28-3924-810f-c04153c831b5
2012-11-13 15:03:23 +00:00
ager@google.com
758943e32a
Add read-only environment variable access.
...
Map<String, String> env = new Platform().environment();
Unfortunately, this is a bit hard to test at this point. I
will move on to implement support for providing an environment
to processes that are started. At that point we can test it
properly.
Another follow-up change will be to remove the instantiation
for Platform. I would like this to be just
Map<String, String> env = Platform.environment();
R=sgjesse@google.com
BUG=dartbug.com/752
TEST=
Review URL: https://chromiumcodereview.appspot.com//10112002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6646 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-17 16:20:28 +00:00
ajohnsen@google.com
d480a1eeef
Add member localHostname() to the Dart IO Platform class.
...
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com//10050011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6409 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-11 12:27:55 +00:00
sgjesse@google.com
d7c8c1f1e4
Fix a number of issues with the process handling
...
1. Ignore the signal SIGPIPE on Linux and Mac OS
When reading from or writing to a closed pipe the signal SIGPIPE
is raised. The default handling of this is to terminate the
program. When signal SIGPIPE is ignored the read and write
returns EPIPE.
2. Wrong return type for stdio getter
3. When there is an error on a socket mark it as closed
4. Mark the pipe used for process exit status as a one way pipe
5. Add tests to test stdin, stdout and stderr in Dart scripts
R=ager@google.com
BUG=dart:536, dart:454
TEST=
Review URL: http://codereview.chromium.org//8662006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1793 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-23 14:49:18 +00:00
ager@google.com
87c2d27fcf
Reapply directory error handling change.
...
Refactor code to have Platform::StrError(int error_code) on all
platforms. Use that to get better error messages on Windows as well.
BUG=
TEST=
Review URL: http://codereview.chromium.org//8511001
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1344 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-09 11:22:33 +00:00
ager@google.com
ec697c8481
Implementation of Platform class that exposes information about the machine and the OS.
...
R=sgjesse@google.com
BUG=
TEST=
Review URL: http://codereview.chromium.org//8492007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1260 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-07 15:04:42 +00:00