Fix usages of PathFragment segments that will become inefficient.
An upcoming replacement to PathFragment will not have efficient segment semantics, causing code to become unnecessarily inefficient.
RELNOTES: None
PiperOrigin-RevId: 182553098
diff --git a/src/main/java/com/google/devtools/build/lib/cmdline/PackageIdentifier.java b/src/main/java/com/google/devtools/build/lib/cmdline/PackageIdentifier.java
index 9469ddd..ac62a3a 100644
--- a/src/main/java/com/google/devtools/build/lib/cmdline/PackageIdentifier.java
+++ b/src/main/java/com/google/devtools/build/lib/cmdline/PackageIdentifier.java
@@ -86,10 +86,10 @@
if (tofind.startsWith(Label.EXTERNAL_PATH_PREFIX)) {
// TODO(ulfjack): Remove this when kchodorow@'s exec root rearrangement has been rolled out.
RepositoryName repository = RepositoryName.create("@" + tofind.getSegment(1));
- return PackageIdentifier.create(repository, tofind.subFragment(2, tofind.segmentCount()));
+ return PackageIdentifier.create(repository, tofind.subFragment(2));
} else if (!tofind.normalize().isNormalized()) {
RepositoryName repository = RepositoryName.create("@" + tofind.getSegment(1));
- return PackageIdentifier.create(repository, tofind.subFragment(2, tofind.segmentCount()));
+ return PackageIdentifier.create(repository, tofind.subFragment(2));
} else {
return PackageIdentifier.createInMainRepo(tofind);
}
diff --git a/src/main/java/com/google/devtools/build/lib/cmdline/RepositoryName.java b/src/main/java/com/google/devtools/build/lib/cmdline/RepositoryName.java
index b008978..94705d7 100644
--- a/src/main/java/com/google/devtools/build/lib/cmdline/RepositoryName.java
+++ b/src/main/java/com/google/devtools/build/lib/cmdline/RepositoryName.java
@@ -22,7 +22,6 @@
import com.google.devtools.build.lib.util.StringCanonicalizer;
import com.google.devtools.build.lib.util.StringUtilities;
import com.google.devtools.build.lib.vfs.PathFragment;
-
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
@@ -144,7 +143,7 @@
}
try {
RepositoryName repoName = RepositoryName.create("@" + path.getSegment(1));
- PathFragment subPath = path.subFragment(2, path.segmentCount());
+ PathFragment subPath = path.subFragment(2);
return Pair.of(repoName, subPath);
} catch (LabelSyntaxException e) {
return null;