diff options
Diffstat (limited to 'input/main.c')
| -rw-r--r-- | input/main.c | 14 | 
1 files changed, 8 insertions, 6 deletions
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)  | 
