diff options
| author | David 'Digit' Turner <digit@google.com> | 2009-10-12 12:36:03 -0700 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2009-10-12 12:36:03 -0700 |
| commit | de553351bf25b60873fd5b5bcefb46b550e104aa (patch) | |
| tree | 04851aa7e1495008051906d6635dec839b2c921c /core/jni | |
| parent | 66e146b30d40e8d1609c8ccbce9bfd960e5ea166 (diff) | |
| parent | 4c220bd0f32b93314c4c1bff328bd815265ef117 (diff) | |
| download | frameworks_base-de553351bf25b60873fd5b5bcefb46b550e104aa.zip frameworks_base-de553351bf25b60873fd5b5bcefb46b550e104aa.tar.gz frameworks_base-de553351bf25b60873fd5b5bcefb46b550e104aa.tar.bz2 | |
am 4c220bd0: Merge branch \'eclair-plus-aosp\' of ssh://android-git.corp.google.com:29418/platform/frameworks/base into eclair-mr2-plus-aosp
Merge commit '4c220bd0f32b93314c4c1bff328bd815265ef117'
* commit '4c220bd0f32b93314c4c1bff328bd815265ef117':
Encourage developers to connect RFCOMM by UUID instead of Channel.
Diffstat (limited to 'core/jni')
| -rw-r--r-- | core/jni/android_server_BluetoothEventLoop.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/core/jni/android_server_BluetoothEventLoop.cpp b/core/jni/android_server_BluetoothEventLoop.cpp index e37e832..62a50e5 100644 --- a/core/jni/android_server_BluetoothEventLoop.cpp +++ b/core/jni/android_server_BluetoothEventLoop.cpp @@ -36,6 +36,10 @@ namespace android { +#define CREATE_DEVICE_ALREADY_EXISTS 1 +#define CREATE_DEVICE_SUCCESS 0 +#define CREATE_DEVICE_FAILED -1 + #ifdef HAVE_BLUETOOTH static jfieldID field_mNativeData; @@ -95,7 +99,7 @@ static void classInitNative(JNIEnv* env, jclass clazz) { method_onCreatePairedDeviceResult = env->GetMethodID(clazz, "onCreatePairedDeviceResult", "(Ljava/lang/String;I)V"); method_onCreateDeviceResult = env->GetMethodID(clazz, "onCreateDeviceResult", - "(Ljava/lang/String;Z)V"); + "(Ljava/lang/String;I)V"); method_onDiscoverServicesResult = env->GetMethodID(clazz, "onDiscoverServicesResult", "(Ljava/lang/String;Z)V"); @@ -1115,10 +1119,13 @@ void onCreateDeviceResult(DBusMessage *msg, void *user, void *n) { LOGV("... Address = %s", address); - bool result = JNI_TRUE; + jint result = CREATE_DEVICE_SUCCESS; if (dbus_set_error_from_message(&err, msg)) { + if (dbus_error_has_name(&err, "org.bluez.Error.AlreadyExists")) { + result = CREATE_DEVICE_ALREADY_EXISTS; + } LOG_AND_FREE_DBUS_ERROR(&err); - result = JNI_FALSE; + result = CREATE_DEVICE_FAILED; } env->CallVoidMethod(nat->me, method_onCreateDeviceResult, |
