Index: sdk/lib/_internal/pub/lib/src/utils.dart |
diff --git a/sdk/lib/_internal/pub/lib/src/utils.dart b/sdk/lib/_internal/pub/lib/src/utils.dart |
index c67ce5720ec48ecdfaf1757c520407d16ac06c7f..d5210f3d57887889592f05027c36bc629c77ef17 100644 |
--- a/sdk/lib/_internal/pub/lib/src/utils.dart |
+++ b/sdk/lib/_internal/pub/lib/src/utils.dart |
@@ -376,37 +376,7 @@ Future awaitObject(object) { |
/// be globally unique, or the wrong library path may be returned. |
String libraryPath(String libraryName) { |
var libraries = currentMirrorSystem().findLibrary(new Symbol(libraryName)); |
- return fileUriToPath(libraries.single.uri); |
-} |
- |
-/// Converts a `file:` [Uri] to a local path string. |
-String fileUriToPath(Uri uri) { |
- if (uri.scheme != 'file') { |
- throw new ArgumentError("Uri $uri must have scheme 'file:'."); |
- } |
- if (Platform.operatingSystem != 'windows') return uri.path; |
- if (uri.path.startsWith("/")) { |
- // Drive-letter paths look like "file:///C:/path/to/file". The replaceFirst |
- // removes the extra initial slash. |
- return uri.path.replaceFirst("/", "").replaceAll("/", "\\"); |
- } else { |
- // Network paths look like "file://hostname/path/to/file". |
- return "\\\\${uri.path.replaceAll("/", "\\")}"; |
- } |
-} |
- |
-/// Converts a local path string to a `file:` [Uri]. |
-Uri pathToFileUri(String pathString) { |
- pathString = path.absolute(pathString); |
- if (Platform.operatingSystem != 'windows') { |
- return Uri.parse('file://$pathString'); |
- } else if (path.rootPrefix(pathString).startsWith('\\\\')) { |
- // Network paths become "file://hostname/path/to/file". |
- return Uri.parse('file:${pathString.replaceAll("\\", "/")}'); |
- } else { |
- // Drive-letter paths become "file:///C:/path/to/file". |
- return Uri.parse('file:///${pathString.replaceAll("\\", "/")}'); |
- } |
+ return path.fromUri(libraries.single.uri); |
} |
/// Gets a "special" string (ANSI escape or Unicode). On Windows, returns |