From: Lukasz Bardeli Date: Thu, 25 Jun 2015 12:56:41 +0000 (+0200) Subject: [Bluetooth] fix for createBonding X-Git-Tag: submit/tizen/20150702.103311^2~2^2~5^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=583a5990e9577f588d7e2ba3f06c87c774232034;p=platform%2Fcore%2Fapi%2Fwebapi-plugins.git [Bluetooth] fix for createBonding Change-Id: Iaaa31cd0cca0232a58bff28130d5ca7106e7b960 Signed-off-by: Lukasz Bardeli --- diff --git a/src/bluetooth/bluetooth_adapter.cc b/src/bluetooth/bluetooth_adapter.cc index 104ff21f..f94360bc 100755 --- a/src/bluetooth/bluetooth_adapter.cc +++ b/src/bluetooth/bluetooth_adapter.cc @@ -858,18 +858,29 @@ void BluetoothAdapter::CreateBonding(const picojson::value& data, picojson::obje PlatformResult ret = PlatformResult(ErrorCode::NO_ERROR); std::shared_ptr response = std::shared_ptr(new picojson::value(picojson::object())); - if (!strcmp(handler->address().c_str(), device_info->remote_address)) { // requested event + + std::string address(handler->address()); + for(size_t i = 0; i < handler->address().length(); i++) { + address[i] = toupper(handler->address()[i]); + } + + std::string remote_address(device_info->remote_address); + for(size_t i = 0; i < sizeof(device_info->remote_address); i++) { + remote_address[i] = toupper(device_info->remote_address[i]); + } + + if (!strcmp(address.c_str(), remote_address.c_str())) { // requested event if (BT_ERROR_NONE == callback_result && nullptr != device_info ) { picojson::object& response_obj = response->get(); picojson::value result = picojson::value(picojson::object()); picojson::object& result_obj = result.get(); BluetoothDevice::ToJson(device_info, &result_obj); + result_obj["address"] = picojson::value(handler->address()); ReportSuccess(result, response_obj); } else if (BT_ERROR_REMOTE_DEVICE_NOT_FOUND == callback_result) { LoggerE("Not found"); ret = PlatformResult(ErrorCode::SERVICE_NOT_AVAILABLE_ERR, "Not found"); - } else { LoggerE("Unknown exception"); ret = PlatformResult(ErrorCode::UNKNOWN_ERR, "Unknown exception"); @@ -966,7 +977,17 @@ void BluetoothAdapter::DestroyBonding(const picojson::value& data, picojson::obj std::shared_ptr response = std::shared_ptr(new picojson::value(picojson::object())); - if (!strcmp(handler->address().c_str(), remote_address)) { // requested event + std::string address(handler->address()); + for(size_t i = 0; i < handler->address().length(); i++) { + address[i] = toupper(handler->address()[i]); + } + + std::string r_address(remote_address); + for(size_t i = 0; i < sizeof(remote_address); i++) { + r_address[i] = toupper(remote_address[i]); + } + + if (!strcmp(address.c_str(), r_address.c_str())) { // requested event if (BT_ERROR_NONE != callback_result) { LoggerE("Unknown exception"); ret = PlatformResult(ErrorCode::UNKNOWN_ERR, "Unknown exception"); @@ -1375,7 +1396,12 @@ void BluetoothAdapter::ConnectToServiceByUUID( ConnectionRequestPtr request{new ConnectionRequest()}; request->uuid_ = uuid; request->callback_handle_ = callback_handle; - connection_requests_.insert(std::make_pair(address, request)); + + std::string r_address(address); + for(size_t i = 0; i < address.length(); i++) { + r_address[i] = toupper(address[i]); + } + connection_requests_.insert(std::make_pair(r_address, request)); bt_socket_set_connection_state_changed_cb(OnSocketConnected, this); break;