diff options
author | Mikel Astiz <mikel.astiz@bmw-carit.de> | 2012-02-21 14:57:10 +0100 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2012-02-26 19:20:38 +0200 |
commit | f11069d5dcf71566defc7f66c2976100da39529d (patch) | |
tree | e5caea9ccbe8fc52639d32ef389919a33020a7f4 /client/session.c | |
parent | aae50b8d6cb6e482d51794bde105aa352bda722f (diff) | |
download | obexd-f11069d5dcf71566defc7f66c2976100da39529d.tar.gz |
client: expose obc_transfer_set_callback
This will allow setting the callback before the transfer is started,
particularly to report queued transfer cancellations.
Diffstat (limited to 'client/session.c')
-rw-r--r-- | client/session.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/client/session.c b/client/session.c index 7f387d4..30b8431 100644 --- a/client/session.c +++ b/client/session.c @@ -107,6 +107,9 @@ static void session_prepare_put(gpointer data, gpointer user_data); static void session_terminate_transfer(struct obc_session *session, struct obc_transfer *transfer, GError *gerr); +static void transfer_progress(struct obc_transfer *transfer, + gint64 transferred, GError *err, + void *user_data); GQuark obex_io_error_quark(void) { @@ -710,6 +713,8 @@ static int session_request(struct obc_session *session, struct pending_request *p; int err; + obc_transfer_set_callback(transfer, transfer_progress, session); + p = pending_request_new(session, transfer, auth_complete, func, data); if (session->p) { @@ -869,7 +874,7 @@ static void session_prepare_get(gpointer data, gpointer user_data) struct obc_transfer *transfer = user_data; int ret; - ret = obc_transfer_get(transfer, transfer_progress, session); + ret = obc_transfer_get(transfer); if (ret < 0) { GError *gerr = NULL; @@ -1014,7 +1019,7 @@ static void session_prepare_put(gpointer data, gpointer user_data) struct obc_transfer *transfer = user_data; int ret; - ret = obc_transfer_put(transfer, transfer_progress, session); + ret = obc_transfer_put(transfer); if (ret < 0) { GError *gerr = NULL; |