}
/* LCOV_EXCL_STOP */
+void _ipc_monitor_fini(void)
+{
+ if (provider_monitor_id) {
+ g_bus_unwatch_name(provider_monitor_id);
+ provider_monitor_id = 0;
+ }
+
+ if (monitor_id) {
+ g_dbus_connection_signal_unsubscribe(_gdbus_conn, monitor_id);
+ monitor_id = 0;
+ }
+
+ if (_gdbus_conn) {
+ g_object_unref(_gdbus_conn);
+ _gdbus_conn = NULL;
+ }
+
+}
+
void _set_request_cb(shortcut_request_cb request_cb, void *data)
{
_request_callback_info.request_cb = request_cb;
void _unset_request_cb(void)
{
+ if (_remove_callback_info.remove_cb == NULL &&
+ _remove_callback_info.data == NULL)
+ _ipc_monitor_fini();
+
_request_callback_info.request_cb = NULL;
_request_callback_info.data = NULL;
}
void _unset_remove_cb(void)
{
+ if (_request_callback_info.request_cb == NULL &&
+ _request_callback_info.data == NULL)
+ _ipc_monitor_fini();
+
_remove_callback_info.remove_cb = NULL;
_remove_callback_info.data = NULL;
}