diff options
author | 2015-04-22 13:48:47 +0000 | |
---|---|---|
committer | 2015-04-23 09:09:48 +0000 | |
commit | dc30c07cc597104fccef63b9fee1948a2324fc5e (patch) | |
tree | a4fa43b06e988d8469346dee6a339dac5478050a /src/main/java/com/google/devtools/build/lib/packages | |
parent | aefa3d0e7abdc7b3b0e7365f93efc808691d1b58 (diff) |
Remove circular symlinks to external dependencies
Fixes #87.
--
MOS_MIGRATED_REVID=91784426
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/packages')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/packages/Package.java | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/packages/Package.java b/src/main/java/com/google/devtools/build/lib/packages/Package.java index 4565dc6dc7..b6328a3aaa 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/Package.java +++ b/src/main/java/com/google/devtools/build/lib/packages/Package.java @@ -110,7 +110,7 @@ public class Package implements Serializable { /** * The root of the source tree in which this package was found. It is an invariant that - * {@code sourceRoot.getRelative(name).equals(packageDirectory)}. + * {@code sourceRoot.getRelative(packageId.getPathFragment()).equals(packageDirectory)}. */ private Path sourceRoot; @@ -312,9 +312,9 @@ public class Package implements Serializable { defaultRestrictedTo = environments; } - public static Path getSourceRoot(Path buildFile, PathFragment nameFragment) { + private static Path getSourceRoot(Path buildFile, PathFragment packageFragment) { Path current = buildFile.getParentDirectory(); - for (int i = 0, len = nameFragment.segmentCount(); i < len && current != null; i++) { + for (int i = 0, len = packageFragment.segmentCount(); i < len && current != null; i++) { current = current.getParentDirectory(); } return current; @@ -341,12 +341,12 @@ public class Package implements Serializable { this.filename = builder.filename; this.packageDirectory = filename.getParentDirectory(); - this.sourceRoot = getSourceRoot(filename, nameFragment); + this.sourceRoot = getSourceRoot(filename, packageIdentifier.getPathFragment()); if ((sourceRoot == null - || !sourceRoot.getRelative(nameFragment).equals(packageDirectory)) + || !sourceRoot.getRelative(packageIdentifier.getPathFragment()).equals(packageDirectory)) && !filename.getBaseName().equals("WORKSPACE")) { throw new IllegalArgumentException( - "Invalid BUILD file name for package '" + name + "': " + filename); + "Invalid BUILD file name for package '" + packageIdentifier + "': " + filename); } this.makeEnv = builder.makeEnv.build(); @@ -395,7 +395,7 @@ public class Package implements Serializable { * Returns the source root (a directory) beneath which this package's BUILD file was found. * * Assumes invariant: - * {@code getSourceRoot().getRelative(getName()).equals(getPackageDirectory())} + * {@code getSourceRoot().getRelative(packageId.getPathFragment()).equals(getPackageDirectory())} */ public Path getSourceRoot() { return sourceRoot; |