Search
SailfishOS Open Build Service
>
Projects
>
nemo
:
devel:hw
:
pine
:
dontbeevil
>
ofono
> _service:tar_git:0009-Initialise-the-slot-manager-on-startup.patch
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
File _service:tar_git:0009-Initialise-the-slot-manager-on-startup.patch of Package ofono
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Adam Pigg <adam@piggz.co.uk> Date: Sun, 10 Mar 2024 12:25:10 +0000 Subject: [PATCH 1/1] Initialise the slot manager on startup --- src/manager.c | 2 ++ src/ofono.h | 8 ++++++++ src/slot-manager.c | 7 +++++-- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/manager.c b/src/manager.c index e3307adb8790c9499a0fa1164f531a995afe966b..db2ab283c500c2b809d1b1986bb3ce45571112c5 100644 --- a/src/manager.c +++ b/src/manager.c @@ -100,6 +100,8 @@ static int manager_init(void) DBusConnection *conn = ofono_dbus_get_connection(); gboolean ret; + DBG("manager_init"); + ret = g_dbus_register_interface(conn, OFONO_MANAGER_PATH, OFONO_MANAGER_INTERFACE, manager_methods, manager_signals, diff --git a/src/ofono.h b/src/ofono.h index ad863738f4fb696e3078a39cad2528986f770c95..b08f50da94bf1740aad98a209ca75aed8b7485e6 100644 --- a/src/ofono.h +++ b/src/ofono.h @@ -614,6 +614,14 @@ void __ofono_private_network_release(int id); ofono_bool_t __ofono_private_network_request(ofono_private_network_cb_t cb, int *id, void *data); + +#include <ofono/dbus-access.h> +#include <ofono/slot.h> + +void __ofono_slot_manager_init(void); +void __ofono_slot_manager_cleanup(void); + + #include <ofono/cell-info.h> #include <ofono/dbus-access.h> #include <ofono/netmon.h> diff --git a/src/slot-manager.c b/src/slot-manager.c index c0e5088b9bf035ce13e1e4ba46c07472fc2b3ac5..5bcfafbd21200440983146a291270137e8357bfb 100644 --- a/src/slot-manager.c +++ b/src/slot-manager.c @@ -1477,7 +1477,7 @@ static void ofono_slot_manager_object_class_init(OfonoSlotManagerObjectClass *c) static OfonoSlotManagerObject *slot_manager = NULL; -void __ofono_slot_manager_init(void) +int slot_manager_init(void) { /* * Let's not assume what's called first, ofono_slot_driver_register() @@ -1486,9 +1486,10 @@ void __ofono_slot_manager_init(void) if (!slot_manager) { slot_manager = ofono_slot_manager_new(); } + return 0; } -void __ofono_slot_manager_cleanup(void) +void slot_manager_cleanup(void) { if (slot_manager) { OfonoSlotManagerObject *mgr = slot_manager; @@ -1507,6 +1508,8 @@ void __ofono_slot_manager_cleanup(void) } } +OFONO_MODULE(slot_manager, slot_manager_init, slot_manager_cleanup) + /*==========================================================================* * Driver registration * Requires access to slot_manager variable