ExperimentalStateTracker: make suffix gracefully handle negative length When requested to produce a suffix of a string of a string of a given length, gracefully handle the case where the requested length is negative---simply return the empty string in this case. While there, mark this static method as such; also increase visibility to default as it is generally useful and should be tested as an interface of this class. -- Change-Id: I821966f7ba3828809bc6d000358803c131740ec9 Reviewed-on: https://bazel-review.googlesource.com/#/c/4223 MOS_MIGRATED_REVID=129080284
diff --git a/src/main/java/com/google/devtools/build/lib/runtime/ExperimentalStateTracker.java b/src/main/java/com/google/devtools/build/lib/runtime/ExperimentalStateTracker.java index a3f4bce..2fa1197 100644 --- a/src/main/java/com/google/devtools/build/lib/runtime/ExperimentalStateTracker.java +++ b/src/main/java/com/google/devtools/build/lib/runtime/ExperimentalStateTracker.java
@@ -33,7 +33,6 @@ import com.google.devtools.build.lib.util.io.AnsiTerminalWriter; import com.google.devtools.build.lib.util.io.PositionAwareAnsiTerminalWriter; import com.google.devtools.build.lib.view.test.TestStatus.BlazeTestStatus; - import java.io.IOException; import java.util.ArrayDeque; import java.util.Deque; @@ -235,7 +234,10 @@ /** * From a string, take a suffix of at most the given length. */ - private String suffix(String s, int len) { + static String suffix(String s, int len) { + if (len <= 0) { + return ""; + } int startPos = s.length() - len; if (startPos <= 0) { return s;