| Index: runtime/bin/builtin.dart
|
| diff --git a/runtime/bin/builtin.dart b/runtime/bin/builtin.dart
|
| index 8f6ea77564c2771e59a27500c670b3548c73776c..95789889852011c7af5928f390f92d44773deb9b 100644
|
| --- a/runtime/bin/builtin.dart
|
| +++ b/runtime/bin/builtin.dart
|
| @@ -215,7 +215,12 @@ void _setWorkingDirectory(cwd) {
|
| _workingWindowsDrivePrefix = _extractDriveLetterPrefix(cwd);
|
| cwd = _sanitizeWindowsPath(cwd);
|
| cwd = _enforceTrailingSlash(cwd);
|
| - _workingDirectoryUri = new Uri(scheme: 'file', path: cwd);
|
| + _workingDirectoryUri = new Uri.file(cwd);
|
| + if (!_workingDirectoryUri.path.endsWith("/")) {
|
| + var directoryPath = _workingDirectoryUri.path + "/";
|
| + _workingDirectoryUri = _workingDirectoryUri.resolve(directoryPath);
|
| + }
|
| +
|
| _logResolution('# Working Directory: $cwd');
|
| }
|
|
|
| @@ -238,8 +243,15 @@ String _resolveScriptUri(String scriptName) {
|
| throw 'No current working directory set.';
|
| }
|
| scriptName = _sanitizeWindowsPath(scriptName);
|
| -
|
| - var scriptUri = Uri.parse(scriptName);
|
| + var scriptUri;
|
| + if (scriptName.startsWith("file:") ||
|
| + scriptName.startsWith("http:") ||
|
| + scriptName.startsWith("https:")) {
|
| + scriptUri = Uri.parse(scriptName);
|
| + } else {
|
| + // Assume it's a file name.
|
| + scriptUri = new Uri.file(scriptName);
|
| + }
|
| if (scriptUri.scheme != '') {
|
| // Script has a scheme, assume that it is fully formed.
|
| _entryPointScript = scriptUri;
|
|
|