diff options
author | Seven Shen <lingtongshen@gmail.com> | 2016-04-06 12:25:17 -0700 |
---|---|---|
committer | Ajay Panicker <apanicke@google.com> | 2016-04-08 21:19:56 +0000 |
commit | 64745b114948ea0c774f74af5721b6283087247d (patch) | |
tree | 7cb6fdb8eac7a8ef038ab4e5c0f29e0917de3588 /src | |
parent | d6e1fa7c20fbddbf9ea5fa7b042bfdf276c1463a (diff) | |
download | android_packages_apps_Bluetooth-64745b114948ea0c774f74af5721b6283087247d.tar.gz android_packages_apps_Bluetooth-64745b114948ea0c774f74af5721b6283087247d.tar.bz2 android_packages_apps_Bluetooth-64745b114948ea0c774f74af5721b6283087247d.zip |
"DO NOT MERGE" Add write SMS protection
Bug: 25138326
Change-Id: I9f418370b8725d49e3734406b6f435107bcff021
Diffstat (limited to 'src')
-rwxr-xr-x | src/com/android/bluetooth/map/BluetoothMapService.java | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/com/android/bluetooth/map/BluetoothMapService.java b/src/com/android/bluetooth/map/BluetoothMapService.java index 04d704355..f696bfaab 100755 --- a/src/com/android/bluetooth/map/BluetoothMapService.java +++ b/src/com/android/bluetooth/map/BluetoothMapService.java @@ -29,6 +29,7 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.IntentFilter.MalformedMimeTypeException; +import android.Manifest; import android.os.Handler; import android.os.Message; import android.os.ParcelUuid; @@ -560,7 +561,10 @@ public class BluetoothMapService extends ProfileService { try { registerReceiver(mMapReceiver, filter); - registerReceiver(mMapReceiver, filterMessageSent); + // We need WRITE_SMS permission to handle messages in + // actionMessageSentDisconnected() + registerReceiver(mMapReceiver, filterMessageSent, + Manifest.permission.WRITE_SMS, null); } catch (Exception e) { Log.w(TAG,"Unable to register map receiver",e); } @@ -1012,8 +1016,12 @@ public class BluetoothMapService extends ProfileService { { /* We do not have a connection to a device, hence we need to move the SMS to the correct folder. */ - BluetoothMapContentObserver + try { + BluetoothMapContentObserver .actionMessageSentDisconnected(context, intent, result); + } catch(IllegalArgumentException e) { + return; + } } } else if (action.equals(BluetoothDevice.ACTION_ACL_DISCONNECTED) && mIsWaitingAuthorization) { |