diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2012-01-25 11:45:14 +0100 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2012-03-15 14:14:58 +0100 |
commit | c2e750d5bfa328fe0ba8c3dc1e1d8c818ad74849 (patch) | |
tree | 60f127d295c2cacdde09f140eea217616185e79f | |
parent | 64de09f052af5f5ecb0bc295bdcdccff803657ee (diff) |
sim: avoid passing source of the async object in finish
-rw-r--r-- | src/mm-broadband-modem.c | 4 | ||||
-rw-r--r-- | src/mm-sim.c | 9 | ||||
-rw-r--r-- | src/mm-sim.h | 3 |
3 files changed, 9 insertions, 7 deletions
diff --git a/src/mm-broadband-modem.c b/src/mm-broadband-modem.c index 61a982ed..9a1251f2 100644 --- a/src/mm-broadband-modem.c +++ b/src/mm-broadband-modem.c @@ -246,14 +246,14 @@ modem_create_sim_finish (MMIfaceModem *self, } static void -modem_create_sim_ready (GAsyncInitable *initable, +modem_create_sim_ready (GObject *source, GAsyncResult *res, GSimpleAsyncResult *simple) { MMSim *sim; GError *error = NULL; - sim = mm_sim_new_finish (initable, res, &error); + sim = mm_sim_new_finish (res, &error); if (!sim) g_simple_async_result_take_error (simple, error); else { diff --git a/src/mm-sim.c b/src/mm-sim.c index 6241a8e8..520d6f97 100644 --- a/src/mm-sim.c +++ b/src/mm-sim.c @@ -1139,13 +1139,16 @@ init_async_context_free (InitAsyncContext *ctx, } MMSim * -mm_sim_new_finish (GAsyncInitable *initable, - GAsyncResult *res, +mm_sim_new_finish (GAsyncResult *res, GError **error) { + GObject *source; GObject *sim; - sim = g_async_initable_new_finish (initable, res, error); + source = g_async_result_get_source_object (res); + sim = g_async_initable_new_finish (G_ASYNC_INITABLE (source), res, error); + g_object_unref (source); + if (!sim) return NULL; diff --git a/src/mm-sim.h b/src/mm-sim.h index dce22200..cba15c07 100644 --- a/src/mm-sim.h +++ b/src/mm-sim.h @@ -125,8 +125,7 @@ void mm_sim_new (MMBaseModem *modem, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); -MMSim *mm_sim_new_finish (GAsyncInitable *initable, - GAsyncResult *res, +MMSim *mm_sim_new_finish (GAsyncResult *res, GError **error); void mm_sim_initialize (MMSim *self, |