Catch potential Exception from .coerceToText()
Bug: 32193696
Tests: Manually verified that Calculator no longer crashes on opening
when there is a Uri on the clipboard.
Change-Id: I0581fa7148cbe88af8214d2823d8764885ec0413
diff --git a/src/com/android/calculator2/CalculatorFormula.java b/src/com/android/calculator2/CalculatorFormula.java
index 88f677c..8a7e4c5 100644
--- a/src/com/android/calculator2/CalculatorFormula.java
+++ b/src/com/android/calculator2/CalculatorFormula.java
@@ -27,6 +27,7 @@
import android.text.TextPaint;
import android.text.TextUtils;
import android.util.AttributeSet;
+import android.util.Log;
import android.util.TypedValue;
import android.view.ActionMode;
import android.view.ContextMenu;
@@ -360,7 +361,12 @@
setLongClickable(false);
return;
}
- final CharSequence clipText = clip.getItemAt(0).coerceToText(getContext());
+ CharSequence clipText = null;
+ try {
+ clipText = clip.getItemAt(0).coerceToText(getContext());
+ } catch (Exception e) {
+ Log.i("Calculator", "Error reading clipboard:", e);
+ }
setLongClickable(!TextUtils.isEmpty(clipText));
}