From f3aa8edebff9ad719dfb5db3b99a5a3ef647bfa3 Mon Sep 17 00:00:00 2001 From: Claudio Takahasi Date: Fri, 26 Feb 2010 11:11:21 -0300 Subject: [PATCH] obexd: Cleanup of reset function of OBEX service driver --- obexd/plugins/opp.c | 6 ++---- obexd/plugins/syncevolution.c | 3 +-- obexd/src/dbus.h | 2 +- obexd/src/manager.c | 7 ++++++- obexd/src/obex.c | 4 ++-- obexd/src/service.h | 2 +- 6 files changed, 13 insertions(+), 11 deletions(-) diff --git a/obexd/plugins/opp.c b/obexd/plugins/opp.c index 04bd57a32..d7cfd84df 100644 --- a/obexd/plugins/opp.c +++ b/obexd/plugins/opp.c @@ -198,11 +198,9 @@ static void opp_disconnect(struct OBEX_session *os) manager_unregister_transfer(os); } -static void opp_reset(obex_t *obex) +static void opp_reset(struct OBEX_session *os) { - struct obex_session *os = OBEX_GetUserData(obex); - - emit_transfer_completed(os->cid, !os->aborted); + manager_emit_transfer_completed(os); } struct obex_service_driver driver = { diff --git a/obexd/plugins/syncevolution.c b/obexd/plugins/syncevolution.c index 94bb3b4a5..7884aacd9 100644 --- a/obexd/plugins/syncevolution.c +++ b/obexd/plugins/syncevolution.c @@ -469,9 +469,8 @@ done: g_free(context); } -static void synce_reset(obex_t *obex) +static void synce_reset(struct OBEX_session *os) { - struct obex_session *os = OBEX_GetUserData(obex); struct synce_context *context = find_context(os); if (context) diff --git a/obexd/src/dbus.h b/obexd/src/dbus.h index 70b08864b..965a66df8 100644 --- a/obexd/src/dbus.h +++ b/obexd/src/dbus.h @@ -31,7 +31,6 @@ void emit_transfer_started(guint32 id); -void emit_transfer_completed(guint32 id, gboolean success); void emit_transfer_progress(guint32 id, guint32 total, guint32 transfered); @@ -49,5 +48,6 @@ void manager_unregister_session(struct OBEX_session *os); void manager_register_transfer(struct OBEX_session *os); void manager_unregister_transfer(struct OBEX_session *os); void manager_emit_transfer_progress(struct OBEX_session *os); +void manager_emit_transfer_completed(struct OBEX_session *os); DBusConnection *obex_dbus_get_connection(void); diff --git a/obexd/src/manager.c b/obexd/src/manager.c index 97da5750d..fd235374c 100644 --- a/obexd/src/manager.c +++ b/obexd/src/manager.c @@ -592,7 +592,7 @@ void emit_transfer_started(guint32 id) g_free(path); } -void emit_transfer_completed(guint32 id, gboolean success) +static void emit_transfer_completed(guint32 id, gboolean success) { gchar *path = g_strdup_printf("/transfer%u", id); @@ -1013,6 +1013,11 @@ void manager_emit_transfer_progress(struct OBEX_session *os) emit_transfer_progress(os->cid, os->size, os->offset); } +void manager_emit_transfer_completed(struct OBEX_session *os) +{ + emit_transfer_completed(os->cid, !os->aborted); +} + DBusConnection *obex_dbus_get_connection(void) { if (connection == NULL) diff --git a/obexd/src/obex.c b/obexd/src/obex.c index c07754b38..e493c1425 100644 --- a/obexd/src/obex.c +++ b/obexd/src/obex.c @@ -810,7 +810,7 @@ static void obex_event(obex_t *obex, obex_object_t *obj, gint mode, case OBEX_EV_ABORT: os->aborted = TRUE; if (os->service->reset) - os->service->reset(obex); + os->service->reset(os); os_reset_session(os); OBEX_ObjectSetRsp(obj, OBEX_RSP_SUCCESS, OBEX_RSP_SUCCESS); break; @@ -825,7 +825,7 @@ static void obex_event(obex_t *obex, obex_object_t *obj, gint mode, default: os_session_mark_aborted(os); if (os->service->reset) - os->service->reset(obex); + os->service->reset(os); os_reset_session(os); break; } diff --git a/obexd/src/service.h b/obexd/src/service.h index 3b6e4bab3..514620489 100644 --- a/obexd/src/service.h +++ b/obexd/src/service.h @@ -39,7 +39,7 @@ struct obex_service_driver { gint (*chkput) (obex_t *obex, obex_object_t *obj); void (*setpath) (obex_t *obex, obex_object_t *obj); void (*disconnect) (struct OBEX_session *os); - void (*reset) (obex_t *obex); + void (*reset) (struct OBEX_session *os); }; int obex_service_driver_register(struct obex_service_driver *driver); -- 2.47.3