diff options
| author | 2023-03-15 12:23:46 +0000 | |
|---|---|---|
| committer | 2023-03-15 13:18:31 +0000 | |
| commit | 1f1c36282c4ecc43c08133b12aeded3be515a2f3 (patch) | |
| tree | 1a52cc85fa6665bacb20cfbf901280cdc4c72ca9 | |
| parent | eda59488f1981a84d397668f25300649aed68e59 (diff) | |
Write start FINISHED_TRANSITIONS token when dumping aborted transition
Otherwise we fail to write the transitions trace because we have a mismatch of opening and closing tags.
Bug: 270949117
Test: atest FlickerTests
Change-Id: Iacd5acf6171d536d51ac468acfbb4da980f47b8f
| -rw-r--r-- | services/core/java/com/android/server/wm/TransitionTracer.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/wm/TransitionTracer.java b/services/core/java/com/android/server/wm/TransitionTracer.java index b1a8a9508e83..57c0d65b28ea 100644 --- a/services/core/java/com/android/server/wm/TransitionTracer.java +++ b/services/core/java/com/android/server/wm/TransitionTracer.java @@ -91,6 +91,13 @@ public class TransitionTracer { * @param transition The transition that has finished. */ public void logFinishedTransition(Transition transition) { + if (transition.mLogger.mProtoToken == 0) { + // Transition finished but never sent, so open token never added + final ProtoOutputStream outputStream = transition.mLogger.mProtoOutputStream; + transition.mLogger.mProtoToken = outputStream + .start(com.android.server.wm.shell.TransitionTraceProto.FINISHED_TRANSITIONS); + } + // Dump the rest of the transition's info that wasn't dumped during logSentTransition dumpFinishedTransitionToProto(transition.mLogger.mProtoOutputStream, transition); transition.mLogger.mProtoOutputStream.end(transition.mLogger.mProtoToken); |