aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/repository
diff options
context:
space:
mode:
authorGravatar nharmata <nharmata@google.com>2017-05-01 17:37:46 +0200
committerGravatar Damien Martin-Guillerez <dmarting@google.com>2017-05-02 11:25:35 +0200
commit38b835097f9ae9a6062172b8a33ec2e2d1edde20 (patch)
treeddd5ac16ff3470bdc39193dd6b69fcab6de0ab5a /src/main/java/com/google/devtools/build/lib/rules/repository
parent2b49f678a7dfaf27afc0e44ed7a65b00ec06d413 (diff)
Only allocate some formerly frequently allocated PathFragment objects once.
This reduces both gc churn and retained memory usage. PiperOrigin-RevId: 154718782
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/repository')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/repository/LocalRepositoryFunction.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryFunction.java3
2 files changed, 2 insertions, 3 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/repository/LocalRepositoryFunction.java b/src/main/java/com/google/devtools/build/lib/rules/repository/LocalRepositoryFunction.java
index 490b1f6324..8d7e3eb5b2 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/repository/LocalRepositoryFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/repository/LocalRepositoryFunction.java
@@ -100,7 +100,7 @@ public class LocalRepositoryFunction extends RepositoryFunction {
directory.getRoot(),
directory
.getRelativePath()
- .getChild(PackageLookupValue.BuildFileName.WORKSPACE.getFilename()));
+ .getRelative(PackageLookupValue.BuildFileName.WORKSPACE.getFilenameFragment()));
SkyKey workspaceFileKey = FileValue.key(workspaceRootedFile);
FileValue value;
diff --git a/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryFunction.java b/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryFunction.java
index 20c26b5942..e6f3837212 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryFunction.java
@@ -473,8 +473,7 @@ public abstract class RepositoryFunction {
if (repositoryPath.segmentCount() > 1) {
if (rule.getRuleClass().equals(LocalRepositoryRule.NAME)
- && repositoryPath.endsWith(
- PathFragment.create(BuildFileName.WORKSPACE.getFilename()))) {
+ && repositoryPath.endsWith(BuildFileName.WORKSPACE.getFilenameFragment())) {
// Ignore this, there is a dependency from LocalRepositoryFunction->WORKSPACE file already
return;
}