From: Szymon Janc Date: Sun, 1 Dec 2013 13:41:55 +0000 (+0100) Subject: sixaxis: Skip controller setup if already connected over Bluetooth X-Git-Tag: android-x86-4.4-r3~6612 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=67c269d17185ae531058951dadfad05ef4442faf;p=android-x86%2Fexternal-bluetooth-bluez.git sixaxis: Skip controller setup if already connected over Bluetooth If controller is already connected over Bluetooth but was then plugged-in via USB (eg. to charge battery) there is no need to do any setup. --- diff --git a/plugins/sixaxis.c b/plugins/sixaxis.c index c3ca26797..b8fe287fc 100644 --- a/plugins/sixaxis.c +++ b/plugins/sixaxis.c @@ -194,6 +194,12 @@ static void setup_device(int fd, int index, struct btd_adapter *adapter) if (get_master_bdaddr(fd, &master_bdaddr) < 0) return; + /* This can happen if controller was plugged while already connected + * eg. to charge up battery */ + device = btd_adapter_find_device(adapter, &device_bdaddr); + if (device && btd_device_is_connected(device)) + return; + adapter_bdaddr = btd_adapter_get_address(adapter); if (bacmp(adapter_bdaddr, &master_bdaddr)) {