diff options
author | Wei Wang <weiwa@google.com> | 2015-01-09 14:39:35 -0800 |
---|---|---|
committer | Wei Wang <weiwa@google.com> | 2015-01-09 22:44:05 +0000 |
commit | a8f9e6399874fa392e12d82409281da04607d64d (patch) | |
tree | 94d46d4ec5a508c113760f400176218021b24ed6 /src | |
parent | cd1091ef948a708bd5ce83f6dc2921710a217684 (diff) | |
download | android_packages_apps_Bluetooth-a8f9e6399874fa392e12d82409281da04607d64d.tar.gz android_packages_apps_Bluetooth-a8f9e6399874fa392e12d82409281da04607d64d.tar.bz2 android_packages_apps_Bluetooth-a8f9e6399874fa392e12d82409281da04607d64d.zip |
Fix Bluetooth crash when all filters are used.
Bug:18963121
Change-Id: Ia69ad697d5be5b0a5e076f33e513aa2698a7468c
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/bluetooth/gatt/ScanManager.java | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/com/android/bluetooth/gatt/ScanManager.java b/src/com/android/bluetooth/gatt/ScanManager.java index 27e492f30..af5eeb021 100644 --- a/src/com/android/bluetooth/gatt/ScanManager.java +++ b/src/com/android/bluetooth/gatt/ScanManager.java @@ -441,7 +441,8 @@ public class ScanManager { } void startRegularScan(ScanClient client) { - if (mFilterIndexStack.isEmpty() && isFilteringSupported()) { + if (isFilteringSupported() && mFilterIndexStack.isEmpty() && + mClientFilterIndexMap.isEmpty()) { initFilterIndexStack(); } if (isFilteringSupported()) { @@ -748,7 +749,7 @@ public class ScanManager { if (client.filters == null || client.filters.isEmpty()) { return true; } - return client.filters.size() < mClientFilterIndexMap.size(); + return client.filters.size() > mFilterIndexStack.size(); } private void addFilterToController(int clientIf, ScanFilterQueue.Entry entry, |