| Index: utils/pub/io.dart
|
| diff --git a/utils/pub/io.dart b/utils/pub/io.dart
|
| index cccedfc17b93098bafde5f6847aaa8d9023ba6a5..212a30e85f2fa5e85667f88fbc0ee708f25a49a5 100644
|
| --- a/utils/pub/io.dart
|
| +++ b/utils/pub/io.dart
|
| @@ -373,12 +373,18 @@ Future<File> createPackageSymlink(String name, from, to,
|
| });
|
| }
|
|
|
| -/**
|
| - * Given [entry] which may be a [String], [File], or [Directory] relative to
|
| - * the current working directory, returns its full canonicalized path.
|
| - */
|
| -// TODO(rnystrom): Should this be async?
|
| -String getFullPath(entry) => new File(_getPath(entry)).fullPathSync();
|
| +/// Given [entry] which may be a [String], [File], or [Directory] relative to
|
| +/// the current working directory, returns its full canonicalized path.
|
| +String getFullPath(entry) {
|
| + var path = new Path(_getPath(entry));
|
| +
|
| + // Don't do anything if it's already absolute.
|
| + if (path.isAbsolute) return path.toNativePath();
|
| +
|
| + // Using Path.join here instead of File().fullPathSync() because the former
|
| + // does not require an actual file to exist at that path.
|
| + return new Path.fromNative(workingDir).join(path).toNativePath();
|
| +}
|
|
|
| // TODO(nweiz): make this configurable
|
| /**
|
|
|