diff --git a/core/java/com/android/internal/view/IInputConnectionWrapper.java b/core/java/com/android/internal/view/IInputConnectionWrapper.java index 644c7e90f8b02..4f7b106a83fed 100644 --- a/core/java/com/android/internal/view/IInputConnectionWrapper.java +++ b/core/java/com/android/internal/view/IInputConnectionWrapper.java @@ -580,7 +580,13 @@ public abstract class IInputConnectionWrapper extends IInputContext.Stub { return; } if (grantUriPermission) { - inputContentInfo.requestPermission(); + try { + inputContentInfo.requestPermission(); + } catch (Exception e) { + Log.e(TAG, "InputConnectionInfo.requestPermission() failed", e); + args.callback.setCommitContentResult(false, args.seq); + return; + } } final boolean result = ic.commitContent(inputContentInfo, flags, (Bundle) args.arg2);