summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--telecomm/java/android/telecom/CallScreeningService.java10
1 files changed, 8 insertions, 2 deletions
diff --git a/telecomm/java/android/telecom/CallScreeningService.java b/telecomm/java/android/telecom/CallScreeningService.java
index ef1c790dcc83..b91787ccff83 100644
--- a/telecomm/java/android/telecom/CallScreeningService.java
+++ b/telecomm/java/android/telecom/CallScreeningService.java
@@ -106,8 +106,14 @@ public abstract class CallScreeningService extends Service {
SomeArgs args = (SomeArgs) msg.obj;
try {
mCallScreeningAdapter = (ICallScreeningAdapter) args.arg1;
- onScreenCall(
- Call.Details.createFromParcelableCall((ParcelableCall) args.arg2));
+ Call.Details callDetails = Call.Details
+ .createFromParcelableCall((ParcelableCall) args.arg2);
+ onScreenCall(callDetails);
+ if (callDetails.getCallDirection() == Call.Details.DIRECTION_OUTGOING) {
+ mCallScreeningAdapter.allowCall(callDetails.getTelecomCallId());
+ }
+ } catch (RemoteException e) {
+ Log.w(this, "Exception when screening call: " + e);
} finally {
args.recycle();
}