summaryrefslogtreecommitdiffstats
path: root/sd
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2014-07-06 12:15:26 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2014-07-06 12:15:41 +0200
commit957bd58163409263a5ea8e5c92a8b74be9340636 (patch)
tree446d7f965720f812f4b1989ead45f8312be222d5 /sd
parentcoverity#735324: Unchecked return value (diff)
downloadcore-957bd58163409263a5ea8e5c92a8b74be9340636.tar.gz
core-957bd58163409263a5ea8e5c92a8b74be9340636.zip
error: could not convert from 'void' to 'bool'
coverity#1202762 fix probably wanted to handle the result of dbus_message_iter_init(), not the result of dbus_message_iter_init_append() Change-Id: I31de559b729421bace92b0a768cb218b072d7b4c
Diffstat (limited to 'sd')
-rw-r--r--sd/source/ui/remotecontrol/BluetoothServer.cxx96
1 files changed, 47 insertions, 49 deletions
diff --git a/sd/source/ui/remotecontrol/BluetoothServer.cxx b/sd/source/ui/remotecontrol/BluetoothServer.cxx
index 7d586ca433e8..5a7b91466df2 100644
--- a/sd/source/ui/remotecontrol/BluetoothServer.cxx
+++ b/sd/source/ui/remotecontrol/BluetoothServer.cxx
@@ -769,27 +769,22 @@ setDBusBooleanProperty( DBusConnection *pConnection, DBusObject *pAdapter,
DBusMessage *pMsg = pProperties->getMethodCall( "Set" );
DBusMessageIter itIn;
- if(!dbus_message_iter_init_append( pMsg, &itIn ))
+ dbus_message_iter_init_append( pMsg, &itIn );
+ const char* pInterface = "org.bluez.Adapter1";
+ dbus_message_iter_append_basic( &itIn, DBUS_TYPE_STRING, &pInterface );
+ dbus_message_iter_append_basic( &itIn, DBUS_TYPE_STRING, &pPropertyName );
+
{
- SAL_WARN( "sdremote.bluetooth", "error init dbus" );
+ DBusMessageIter varIt;
+ dbus_message_iter_open_container( &itIn, DBUS_TYPE_VARIANT,
+ DBUS_TYPE_BOOLEAN_AS_STRING, &varIt );
+ dbus_bool_t bDBusBoolean = bBoolean;
+ dbus_message_iter_append_basic( &varIt, DBUS_TYPE_BOOLEAN, &bDBusBoolean );
+ dbus_message_iter_close_container( &itIn, &varIt );
}
- else
- {
- const char* pInterface = "org.bluez.Adapter1";
- dbus_message_iter_append_basic( &itIn, DBUS_TYPE_STRING, &pInterface );
- dbus_message_iter_append_basic( &itIn, DBUS_TYPE_STRING, &pPropertyName );
- {
- DBusMessageIter varIt;
- dbus_message_iter_open_container( &itIn, DBUS_TYPE_VARIANT,
- DBUS_TYPE_BOOLEAN_AS_STRING, &varIt );
- dbus_bool_t bDBusBoolean = bBoolean;
- dbus_message_iter_append_basic( &varIt, DBUS_TYPE_BOOLEAN, &bDBusBoolean );
- dbus_message_iter_close_container( &itIn, &varIt );
- }
+ pMsg = sendUnrefAndWaitForReply( pConnection, pMsg );
- pMsg = sendUnrefAndWaitForReply( pConnection, pMsg );
- }
if( !pMsg )
{
SAL_WARN( "sdremote.bluetooth", "no valid reply / timeout" );
@@ -917,45 +912,48 @@ DBusHandlerResult ProfileMessageFunction
}
DBusMessageIter it;
- dbus_message_iter_init(pMessage, &it);
+ if (!dbus_message_iter_init(pMessage, &it))
+ SAL_WARN( "sdremote.bluetooth", "error init dbus" );
+ else
+ {
+ char* pPath;
+ dbus_message_iter_get_basic(&it, &pPath);
+ SAL_INFO("sdremote.bluetooth", "Adapter path:" << pPath);
- char* pPath;
- dbus_message_iter_get_basic(&it, &pPath);
- SAL_INFO("sdremote.bluetooth", "Adapter path:" << pPath);
+ if (!dbus_message_iter_next(&it))
+ SAL_WARN("sdremote.bluetooth", "not enough parameters passed");
- if (!dbus_message_iter_next(&it))
- SAL_WARN("sdremote.bluetooth", "not enough parameters passed");
+ // DBUS_TYPE_UNIX_FD == 'h' -- doesn't exist in older versions
+ // of dbus (< 1.3?) hence defined manually for now
+ if ('h' == dbus_message_iter_get_arg_type(&it))
+ {
- // DBUS_TYPE_UNIX_FD == 'h' -- doesn't exist in older versions
- // of dbus (< 1.3?) hence defined manually for now
- if ('h' == dbus_message_iter_get_arg_type(&it))
- {
+ int nDescriptor;
+ dbus_message_iter_get_basic(&it, &nDescriptor);
+ std::vector<Communicator*>* pCommunicators = (std::vector<Communicator*>*) user_data;
- int nDescriptor;
- dbus_message_iter_get_basic(&it, &nDescriptor);
- std::vector<Communicator*>* pCommunicators = (std::vector<Communicator*>*) user_data;
+ // Bluez gives us non-blocking sockets, but our code relies
+ // on blocking behaviour.
+ (void)fcntl(nDescriptor, F_SETFL, fcntl(nDescriptor, F_GETFL) & ~O_NONBLOCK);
- // Bluez gives us non-blocking sockets, but our code relies
- // on blocking behaviour.
- (void)fcntl(nDescriptor, F_SETFL, fcntl(nDescriptor, F_GETFL) & ~O_NONBLOCK);
+ SAL_INFO( "sdremote.bluetooth", "connection accepted " << nDescriptor);
+ Communicator* pCommunicator = new Communicator( new BufferedStreamSocket( nDescriptor ) );
+ pCommunicators->push_back( pCommunicator );
+ pCommunicator->launch();
+ }
- SAL_INFO( "sdremote.bluetooth", "connection accepted " << nDescriptor);
- Communicator* pCommunicator = new Communicator( new BufferedStreamSocket( nDescriptor ) );
- pCommunicators->push_back( pCommunicator );
- pCommunicator->launch();
+ // For some reason an (empty?) reply is expected.
+ DBusMessage* pRet = dbus_message_new_method_return(pMessage);
+ dbus_connection_send(pConnection, pRet, NULL);
+ dbus_message_unref(pRet);
+
+ // We could read the remote profile version and features here
+ // (i.e. they are provided as part of the DBusMessage),
+ // however for us they are irrelevant (as our protocol handles
+ // equivalent functionality independently of whether we're on
+ // bluetooth or normal network connection).
+ return DBUS_HANDLER_RESULT_HANDLED;
}
-
- // For some reason an (empty?) reply is expected.
- DBusMessage* pRet = dbus_message_new_method_return(pMessage);
- dbus_connection_send(pConnection, pRet, NULL);
- dbus_message_unref(pRet);
-
- // We could read the remote profile version and features here
- // (i.e. they are provided as part of the DBusMessage),
- // however for us they are irrelevant (as our protocol handles
- // equivalent functionality independently of whether we're on
- // bluetooth or normal network connection).
- return DBUS_HANDLER_RESULT_HANDLED;
}
else if (OString(dbus_message_get_member(pMessage)).equals("RequestDisconnection"))
{