diff options
author | Charles Lu <ChangYanLu@motorola.com> | 2009-08-07 11:00:49 +0800 |
---|---|---|
committer | Jaikumar Ganesh <jaikumar@google.com> | 2009-08-07 10:17:23 -0700 |
commit | c98719313ba87b2736ae3ca6522e5d707654250a (patch) | |
tree | 7801d683df9938f2af107603b17411dbaba3bf37 /core/jni/android_server_BluetoothEventLoop.cpp | |
parent | 9488437b4f55c425b0168d612d729427b19b85ad (diff) | |
download | frameworks_base-c98719313ba87b2736ae3ca6522e5d707654250a.zip frameworks_base-c98719313ba87b2736ae3ca6522e5d707654250a.tar.gz frameworks_base-c98719313ba87b2736ae3ca6522e5d707654250a.tar.bz2 |
Fix the scanning panic issue
Phone panics while streaming over A2DP and scanning for new device
BluetoothEventLoop should delete reference
Diffstat (limited to 'core/jni/android_server_BluetoothEventLoop.cpp')
-rw-r--r-- | core/jni/android_server_BluetoothEventLoop.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/core/jni/android_server_BluetoothEventLoop.cpp b/core/jni/android_server_BluetoothEventLoop.cpp index 4a13e80..527bf07 100644 --- a/core/jni/android_server_BluetoothEventLoop.cpp +++ b/core/jni/android_server_BluetoothEventLoop.cpp @@ -711,6 +711,7 @@ static DBusHandlerResult event_filter(DBusConnection *conn, DBusMessage *msg, method_onDeviceFound, env->NewStringUTF(c_address), str_array); + env->DeleteLocalRef(str_array); } else LOG_AND_FREE_DBUS_ERROR_WITH_MSG(&err, msg); return DBUS_HANDLER_RESULT_HANDLED; @@ -774,6 +775,7 @@ static DBusHandlerResult event_filter(DBusConnection *conn, DBusMessage *msg, env->CallVoidMethod(nat->me, method_onPropertyChanged, str_array); + env->DeleteLocalRef(str_array); } else LOG_AND_FREE_DBUS_ERROR_WITH_MSG(&err, msg); return DBUS_HANDLER_RESULT_HANDLED; } else if (dbus_message_is_signal(msg, @@ -786,6 +788,7 @@ static DBusHandlerResult event_filter(DBusConnection *conn, DBusMessage *msg, method_onDevicePropertyChanged, env->NewStringUTF(remote_device_path), str_array); + env->DeleteLocalRef(str_array); } else LOG_AND_FREE_DBUS_ERROR_WITH_MSG(&err, msg); return DBUS_HANDLER_RESULT_HANDLED; |