aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/main/java/com/google/devtools/build/lib/syntax/MethodLibrary.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/MethodLibrary.java b/src/main/java/com/google/devtools/build/lib/syntax/MethodLibrary.java
index f02b58546e..a7d168dc87 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/MethodLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/MethodLibrary.java
@@ -2032,13 +2032,17 @@ public class MethodLibrary {
if (step == 0) {
throw new EvalException(loc, "step cannot be 0");
}
- List<Integer> result = Lists.newArrayList();
+ ArrayList<Integer> result = Lists.newArrayList();
if (step > 0) {
+ int size = (stop - start) / step;
+ result.ensureCapacity(size);
while (start < stop) {
result.add(start);
start += step;
}
} else {
+ int size = (start - stop) / step;
+ result.ensureCapacity(size);
while (start > stop) {
result.add(start);
start += step;