diff options
author | Ravi Paluri <rpaluri@codeaurora.org> | 2015-11-20 18:39:14 +0530 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2015-12-11 10:45:04 -0800 |
commit | ae424783cb6e73ae9aa6ceceef05c4d283f9ea57 (patch) | |
tree | 570056522842cdb801f7645afa817cf8654a4595 /src | |
parent | 2bf757acd095c39172aa9954450b9c7d0cb6f37e (diff) | |
download | android_frameworks_opt_telephony-ae424783cb6e73ae9aa6ceceef05c4d283f9ea57.tar.gz android_frameworks_opt_telephony-ae424783cb6e73ae9aa6ceceef05c4d283f9ea57.tar.bz2 android_frameworks_opt_telephony-ae424783cb6e73ae9aa6ceceef05c4d283f9ea57.zip |
IMS-VT: Update videoProvider in main thread
Setting video provider in seperate thread is causing timing
issues due to which media signalling is happening on
video provider of closed session. So, process merge complete
indication after video provider is updated to ensure that
media signalling happens on video provider attached with
conference imscallsession.
Change-Id: I9a5ca67402effbf22135addcbd3be240d36669b8
CRs-Fixed: 940142
Diffstat (limited to 'src')
-rw-r--r-- | src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java | 27 |
1 files changed, 9 insertions, 18 deletions
diff --git a/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java b/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java index 2248d5a9c..44d983ceb 100644 --- a/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java +++ b/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java @@ -1405,24 +1405,15 @@ public final class ImsPhoneCallTracker extends CallTracker { } foregroundImsPhoneCall.merge(peerImsPhoneCall, ImsPhoneCall.State.ACTIVE); - // TODO Temporary code. Remove the try-catch block from the runnable once thread - // synchronization is fixed. - Runnable r = new Runnable() { - @Override - public void run() { - try { - final ImsPhoneConnection conn = findConnection(call); - log("onCallMerged: ImsPhoneConnection=" + conn); - log("onCallMerged: CurrentVideoProvider=" + conn.getVideoProvider()); - setVideoCallProvider(conn, call); - log("onCallMerged: CurrentVideoProvider=" + conn.getVideoProvider()); - } catch (Exception e) { - loge("onCallMerged: exception " + e); - } - } - }; - - ImsPhoneCallTracker.this.post(r); + try { + final ImsPhoneConnection conn = findConnection(call); + log("onCallMerged: ImsPhoneConnection=" + conn); + log("onCallMerged: CurrentVideoProvider=" + conn.getVideoProvider()); + setVideoCallProvider(conn, call); + log("onCallMerged: CurrentVideoProvider=" + conn.getVideoProvider()); + } catch (Exception e) { + loge("onCallMerged: exception " + e); + } // After merge complete, update foreground as Active // and background call as Held, if background call exists |