diff options
Diffstat (limited to 'input')
-rw-r--r-- | input/device.c | 2 | ||||
-rw-r--r-- | input/main.c | 14 | ||||
-rw-r--r-- | input/manager.c | 14 |
3 files changed, 11 insertions, 19 deletions
diff --git a/input/device.c b/input/device.c index e5fe0c46..44bec0d6 100644 --- a/input/device.c +++ b/input/device.c @@ -52,7 +52,7 @@ #include "fakehid.h" #include "glib-helper.h" -#define INPUT_DEVICE_INTERFACE "org.bluez.input.Device" +#define INPUT_DEVICE_INTERFACE "org.bluez.Input" #define BUF_SIZE 16 diff --git a/input/main.c b/input/main.c index d3d152e0..8df96891 100644 --- a/input/main.c +++ b/input/main.c @@ -28,7 +28,6 @@ #include <errno.h> #include <bluetooth/bluetooth.h> -#include <bluetooth/sdp.h> #include <gdbus.h> @@ -53,19 +52,20 @@ static GKeyFile *load_config_file(const char *file) return keyfile; } +static DBusConnection *connection; + static int input_init(void) { GKeyFile *config; - DBusConnection *conn; - conn = dbus_bus_get(DBUS_BUS_SYSTEM, NULL); - if (conn == NULL) + connection = dbus_bus_get(DBUS_BUS_SYSTEM, NULL); + if (connection == NULL) return -EIO; config = load_config_file(CONFIGDIR "/input.conf"); - if (input_manager_init(conn, config) < 0) { - dbus_connection_unref(conn); + if (input_manager_init(connection, config) < 0) { + dbus_connection_unref(connection); return -EIO; } @@ -78,6 +78,8 @@ static int input_init(void) static void input_exit(void) { input_manager_exit(); + + dbus_connection_unref(connection); } BLUETOOTH_PLUGIN_DEFINE("input", input_init, input_exit) diff --git a/input/manager.c b/input/manager.c index a2a22762..d3829323 100644 --- a/input/manager.c +++ b/input/manager.c @@ -25,21 +25,14 @@ #include <config.h> #endif -#include <ctype.h> -#include <dirent.h> #include <errno.h> -#include <stdlib.h> -#include <unistd.h> #include <bluetooth/bluetooth.h> #include <bluetooth/hci.h> -#include <bluetooth/hci_lib.h> #include <bluetooth/hidp.h> #include <bluetooth/sdp.h> #include <bluetooth/sdp_lib.h> -#include <glib.h> -#include <dbus/dbus.h> #include <gdbus.h> #include "logging.h" @@ -49,10 +42,8 @@ #include "device.h" #include "server.h" -#include "error.h" #include "manager.h" #include "storage.h" -#include "glib-helper.h" static int idle_timeout = 0; @@ -319,12 +310,11 @@ int input_manager_init(DBusConnection *conn, GKeyFile *config) void input_manager_exit(void) { - - btd_unregister_adapter_driver(&input_server_driver); - btd_unregister_device_driver(&input_hid_driver); btd_unregister_device_driver(&input_headset_driver); + btd_unregister_adapter_driver(&input_server_driver); + dbus_connection_unref(connection); connection = NULL; |