aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLuiz Augusto von Dentz <luiz.dentz@openbossa.org>2009-04-07 11:41:14 -0300
committerJohan Hedberg <johan.hedberg@nokia.com>2009-04-09 11:36:49 +0300
commit378a836e43518b4d05e06c40e3130d507b24fbf4 (patch)
tree4fe36e5fd7371bf1862cc1689983764cc29e8075 /src
parent66906625a30d68a96cbdaef97597323896a2685e (diff)
downloadbluez-378a836e43518b4d05e06c40e3130d507b24fbf4.tar.gz
Simplify Manager.FindAdapter.
Manager.FindAdapter was doing unnecessary checks like which are already done before registering the adapters.
Diffstat (limited to 'src')
-rw-r--r--src/manager.c22
1 files changed, 4 insertions, 18 deletions
diff --git a/src/manager.c b/src/manager.c
index a0912354..f3b8e88a 100644
--- a/src/manager.c
+++ b/src/manager.c
@@ -136,7 +136,6 @@ static DBusMessage *find_adapter(DBusConnection *conn,
{
DBusMessage *reply;
struct btd_adapter *adapter;
- struct hci_dev_info di;
const char *pattern;
int dev_id;
const gchar *path;
@@ -151,26 +150,13 @@ static DBusMessage *find_adapter(DBusConnection *conn,
path = adapter_any_get_path();
if (path != NULL)
goto done;
- dev_id = -1;
- } else if (!strncmp(pattern, "hci", 3) && strlen(pattern) >= 4)
+ return no_such_adapter(msg);
+ } else if (!strncmp(pattern, "hci", 3) && strlen(pattern) >= 4) {
dev_id = atoi(pattern + 3);
- else {
+ adapter = manager_find_adapter_by_id(dev_id);
+ } else
adapter = manager_find_adapter_by_address(pattern);
- goto proceed;
- }
-
- if (dev_id < 0)
- return no_such_adapter(msg);
-
- if (hci_devinfo(dev_id, &di) < 0)
- return no_such_adapter(msg);
-
- if (hci_test_bit(HCI_RAW, &di.flags))
- return no_such_adapter(msg);
-
- adapter = manager_find_adapter_by_id(dev_id);
-proceed:
if (!adapter)
return no_such_adapter(msg);