diff options
| -rw-r--r-- | core/java/com/android/internal/util/StateMachine.java | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/core/java/com/android/internal/util/StateMachine.java b/core/java/com/android/internal/util/StateMachine.java index 7ad347020923..916f19d53f67 100644 --- a/core/java/com/android/internal/util/StateMachine.java +++ b/core/java/com/android/internal/util/StateMachine.java @@ -25,6 +25,7 @@ import android.util.Log; import java.io.FileDescriptor; import java.io.PrintWriter; +import java.io.StringWriter; import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; @@ -1940,19 +1941,25 @@ public class StateMachine { * @param args */ public void dump(FileDescriptor fd, PrintWriter pw, String[] args) { - pw.println(this.toString()); + // Cannot just invoke pw.println(this.toString()) because if the + // resulting string is to long it won't be displayed. + pw.println(getName() + ":"); + pw.println(" total records=" + getLogRecCount()); + for (int i = 0; i < getLogRecSize(); i++) { + pw.println(" rec[" + i + "]: " + getLogRec(i).toString()); + pw.flush(); + } + pw.println("curState=" + getCurrentState().getName()); } @Override public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append(getName() + ":\n"); - sb.append(" total records=" + getLogRecCount() + "\n"); - for (int i = 0; i < getLogRecSize(); i++) { - sb.append(" rec[" + i + "]: " + getLogRec(i).toString() + "\n"); - } - sb.append("curState=" + getCurrentState().getName()); - return sb.toString(); + StringWriter sr = new StringWriter(); + PrintWriter pr = new PrintWriter(sr); + dump(null, pr, null); + pr.flush(); + pr.close(); + return sr.toString(); } /** |