From b212ad4ce1f721c13ff122869e784775a027a286 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Wed, 28 Nov 2012 10:58:58 +0100 Subject: [PATCH] Prevent some crashes --- src/org/linphone/IncomingCallActivity.java | 13 ++++++++----- src/org/linphone/LinphoneManager.java | 14 ++++++++------ 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/org/linphone/IncomingCallActivity.java b/src/org/linphone/IncomingCallActivity.java index 8e557940e..ba4af04ad 100644 --- a/src/org/linphone/IncomingCallActivity.java +++ b/src/org/linphone/IncomingCallActivity.java @@ -88,12 +88,15 @@ public class IncomingCallActivity extends Activity implements LinphoneOnCallStat super.onResume(); instance = this; LinphoneManager.addListener(this); + // Only one call ringing at a time is allowed - List calls = LinphoneUtils.getLinphoneCalls(LinphoneManager.getLc()); - for (LinphoneCall call : calls) { - if (State.IncomingReceived == call.getState()) { - mCall = call; - break; + if (LinphoneManager.getLcIfManagerNotDestroyedOrNull() != null) { + List calls = LinphoneUtils.getLinphoneCalls(LinphoneManager.getLc()); + for (LinphoneCall call : calls) { + if (State.IncomingReceived == call.getState()) { + mCall = call; + break; + } } } if (mCall == null) { diff --git a/src/org/linphone/LinphoneManager.java b/src/org/linphone/LinphoneManager.java index 52851fca8..d42e3e9ee 100644 --- a/src/org/linphone/LinphoneManager.java +++ b/src/org/linphone/LinphoneManager.java @@ -1032,12 +1032,14 @@ public final class LinphoneManager implements LinphoneCoreListener { } public Context getActivity() { - if (LinphoneActivity.isInstanciated()) - return LinphoneActivity.instance(); - else if (InCallActivity.isInstanciated()) - return InCallActivity.instance(); - else if (IncomingCallActivity.isInstanciated()) - return IncomingCallActivity.instance(); + try { + if (LinphoneActivity.isInstanciated()) + return LinphoneActivity.instance(); + else if (InCallActivity.isInstanciated()) + return InCallActivity.instance(); + else if (IncomingCallActivity.isInstanciated()) + return IncomingCallActivity.instance(); + } catch (Exception e) {} return null; }