summaryrefslogtreecommitdiff
path: root/telecomm/java/android/telecom/Logging/SessionManager.java
diff options
context:
space:
mode:
authorBrad Ebinger <breadley@google.com>2019-11-13 14:12:22 -0800
committerBrad Ebinger <breadley@google.com>2019-11-13 16:51:16 -0800
commitc4044355ebf3727f14b99336dcafd0e8f5f18893 (patch)
treead8ab051ca02915dc1ca4fb1436a4f0a14657586 /telecomm/java/android/telecom/Logging/SessionManager.java
parenta9ee3aaa5faa205662a2150d529349e5f83eca27 (diff)
Fix infinite recursion due to error log message
Bug: 144446106 Test: atest TelecomUnitTests:SessionTest Change-Id: I382f90ad6f91262b06ac8816ecf1ecabfa9f6bb6
Diffstat (limited to 'telecomm/java/android/telecom/Logging/SessionManager.java')
-rw-r--r--telecomm/java/android/telecom/Logging/SessionManager.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/telecomm/java/android/telecom/Logging/SessionManager.java b/telecomm/java/android/telecom/Logging/SessionManager.java
index 49c3a7205d59..ac300587cef8 100644
--- a/telecomm/java/android/telecom/Logging/SessionManager.java
+++ b/telecomm/java/android/telecom/Logging/SessionManager.java
@@ -202,7 +202,18 @@ public class SessionManager {
return createSubsession(false);
}
- private synchronized Session createSubsession(boolean isStartedFromActiveSession) {
+ /**
+ * Creates a new subsession based on an existing session. Will not be started until
+ * {@link #continueSession(Session, String)} or {@link #cancelSubsession(Session)} is called.
+ * <p>
+ * Only public for testing!
+ * @param isStartedFromActiveSession true if this subsession is being created for a task on the
+ * same thread, false if it is being created for a related task on another thread.
+ * @return a new {@link Session}, call {@link #continueSession(Session, String)} to continue the
+ * session and {@link #endSession()} when done with this subsession.
+ */
+ @VisibleForTesting
+ public synchronized Session createSubsession(boolean isStartedFromActiveSession) {
int threadId = getCallingThreadId();
Session threadSession = mSessionMapper.get(threadId);
if (threadSession == null) {