base-sim: set dbus id as soon as object is created
This commit is contained in:
@@ -57,6 +57,8 @@ static GParamSpec *properties[PROP_LAST];
|
|||||||
struct _MMBaseSimPrivate {
|
struct _MMBaseSimPrivate {
|
||||||
/* The connection to the system bus */
|
/* The connection to the system bus */
|
||||||
GDBusConnection *connection;
|
GDBusConnection *connection;
|
||||||
|
guint dbus_id;
|
||||||
|
|
||||||
/* The modem which owns this SIM */
|
/* The modem which owns this SIM */
|
||||||
MMBaseModem *modem;
|
MMBaseModem *modem;
|
||||||
/* The path where the SIM object is exported */
|
/* The path where the SIM object is exported */
|
||||||
@@ -70,10 +72,9 @@ static guint signals[SIGNAL_LAST] = { 0 };
|
|||||||
void
|
void
|
||||||
mm_base_sim_export (MMBaseSim *self)
|
mm_base_sim_export (MMBaseSim *self)
|
||||||
{
|
{
|
||||||
static guint id = 0;
|
|
||||||
gchar *path;
|
gchar *path;
|
||||||
|
|
||||||
path = g_strdup_printf (MM_DBUS_SIM_PREFIX "/%d", id++);
|
path = g_strdup_printf (MM_DBUS_SIM_PREFIX "/%d", self->priv->dbus_id);
|
||||||
g_object_set (self,
|
g_object_set (self,
|
||||||
MM_BASE_SIM_PATH, path,
|
MM_BASE_SIM_PATH, path,
|
||||||
NULL);
|
NULL);
|
||||||
@@ -1811,8 +1812,13 @@ get_property (GObject *object,
|
|||||||
static void
|
static void
|
||||||
mm_base_sim_init (MMBaseSim *self)
|
mm_base_sim_init (MMBaseSim *self)
|
||||||
{
|
{
|
||||||
|
static guint id = 0;
|
||||||
|
|
||||||
/* Initialize private data */
|
/* Initialize private data */
|
||||||
self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, MM_TYPE_BASE_SIM, MMBaseSimPrivate);
|
self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, MM_TYPE_BASE_SIM, MMBaseSimPrivate);
|
||||||
|
|
||||||
|
/* Each SIM is given a unique id to build its own DBus path */
|
||||||
|
self->priv->dbus_id = id++;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
Reference in New Issue
Block a user