summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Monk <jmonk@google.com>2015-10-16 10:13:53 -0400
committerJason Monk <jmonk@google.com>2015-10-16 10:13:53 -0400
commit77b11fa4707dffe94d253e951e5409d3c3f5a130 (patch)
treeb7d45f8fbeabb9daaf915efd68fa8f0058fd6967
parent1704ca968d4566218f159817625f849c1dc34d96 (diff)
downloadpackages_apps_Settings-77b11fa4707dffe94d253e951e5409d3c3f5a130.zip
packages_apps_Settings-77b11fa4707dffe94d253e951e5409d3c3f5a130.tar.gz
packages_apps_Settings-77b11fa4707dffe94d253e951e5409d3c3f5a130.tar.bz2
Fix crashes in Settings
Fix problems from unsupported intents being launched through adb. Remove the ones we can, fix the other. Bug: 19634064 Change-Id: Iba0adeb135e76ee70365e5891380ba8b55110c26
-rw-r--r--AndroidManifest.xml22
-rw-r--r--src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java6
2 files changed, 5 insertions, 23 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index b003e39..3d538a1 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -671,7 +671,6 @@
android:excludeFromRecents="true">
<intent-filter android:priority="1">
<action android:name="com.android.settings.USER_DICTIONARY_INSERT" />
- <action android:name="com.android.settings.USER_DICTIONARY_EDIT" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
@@ -1736,27 +1735,6 @@
<activity android:name=".AppPicker" android:label="@string/select_application"
android:theme="@android:style/Theme.Material.Light.Dialog" />
- <activity android:name="Settings$UsbSettingsActivity"
- android:label="@string/storage_title_usb"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$StorageSettingsActivity">
- <intent-filter android:priority="1">
- <action android:name="android.settings.STORAGE_USB_SETTINGS" />
- <action android:name="com.android.settings.STORAGE_USB_SETTINGS" />
- <category android:name="android.intent.category.DEFAULT" />
- </intent-filter>
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.DEFAULT" />
- </intent-filter>
- <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.deviceinfo.UsbSettings" />
- <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
- android:resource="@id/storage_settings" />
- <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
- android:value="true" />
- </activity>
-
<!-- Keep compatibility with old shortcuts. -->
<activity-alias android:name="UsbSettings"
android:exported="true"
diff --git a/src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java b/src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java
index 2901673..587f41c 100644
--- a/src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java
+++ b/src/com/android/settings/inputmethod/UserDictionaryAddWordActivity.java
@@ -56,7 +56,10 @@ public class UserDictionaryAddWordActivity extends Activity {
// The following will get the EXTRA_WORD and EXTRA_LOCALE fields that are in the intent.
// We do need to add the action by hand, because UserDictionaryAddWordContents expects
// it to be in the bundle, in the EXTRA_MODE key.
- final Bundle args = intent.getExtras();
+ Bundle args = intent.getExtras();
+ if (args == null) {
+ args = new Bundle();
+ }
args.putInt(UserDictionaryAddWordContents.EXTRA_MODE, mode);
if (null != savedInstanceState) {
@@ -74,6 +77,7 @@ public class UserDictionaryAddWordActivity extends Activity {
private void reportBackToCaller(final int resultCode, final Bundle result) {
final Intent senderIntent = getIntent();
+ if (senderIntent.getExtras() == null) return;
final Object listener = senderIntent.getExtras().get("listener");
if (!(listener instanceof Messenger)) return; // This will work if listener is null too.
final Messenger messenger = (Messenger)listener;