Mark File/Directory.fromRawPath as an entry point
Fixes https://github.com/flutter/flutter/issues/21242
Change-Id: Ibc100bbdaffd41a1f91a13087a0f12bc1849fc6f
Reviewed-on: https://dart-review.googlesource.com/72920
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Zach Anderson <zra@google.com>
diff --git a/runtime/bin/dart_io_entries.txt b/runtime/bin/dart_io_entries.txt
index c642194..b21ec2d 100644
--- a/runtime/bin/dart_io_entries.txt
+++ b/runtime/bin/dart_io_entries.txt
@@ -10,7 +10,9 @@
dart:io,::,_getWatchSignalInternal
dart:io,CertificateException,CertificateException.
dart:io,Directory,Directory.
+dart:io,Directory,Directory.fromRawPath
dart:io,File,File.
+dart:io,File,File.fromRawPath
dart:io,FileSystemException,FileSystemException.
dart:io,HandshakeException,HandshakeException.
dart:io,Link,Link.
diff --git a/sdk/lib/io/directory.dart b/sdk/lib/io/directory.dart
index bdd4af1..2fc0930 100644
--- a/sdk/lib/io/directory.dart
+++ b/sdk/lib/io/directory.dart
@@ -135,6 +135,7 @@
return overrides.createDirectory(path);
}
+ @pragma("vm:entry-point")
factory Directory.fromRawPath(Uint8List path) {
// TODO(bkonyi): Handle overrides.
return new _Directory.fromRawPath(path);
diff --git a/sdk/lib/io/file.dart b/sdk/lib/io/file.dart
index e34008c..6fe447f 100644
--- a/sdk/lib/io/file.dart
+++ b/sdk/lib/io/file.dart
@@ -267,6 +267,7 @@
* Creates a File object from a raw path, that is, a sequence of bytes
* as represented by the OS.
*/
+ @pragma("vm:entry-point")
factory File.fromRawPath(Uint8List rawPath) {
// TODO(bkonyi): Handle overrides.
return new _File.fromRawPath(rawPath);