From: Radoslaw Jablonski <ext-jablonski.radoslaw@nokia.com>
To: linux-bluetooth@vger.kernel.org
Cc: Radoslaw Jablonski <ext-jablonski.radoslaw@nokia.com>
Subject: [PATCH 1/7 v3] Add return value to query tracker
Date: Mon, 14 Feb 2011 11:19:45 +0200 [thread overview]
Message-ID: <1297675191-8046-1-git-send-email-ext-jablonski.radoslaw@nokia.com> (raw)
Previously errors were returned via parameter err - it was needed
because some time ago query_tracker was returning newly allocated
structure. Now returning error through return value has more
sense.
---
plugins/phonebook-tracker.c | 37 ++++++++++++++++++-------------------
1 files changed, 18 insertions(+), 19 deletions(-)
diff --git a/plugins/phonebook-tracker.c b/plugins/phonebook-tracker.c
index e116175..8044395 100644
--- a/plugins/phonebook-tracker.c
+++ b/plugins/phonebook-tracker.c
@@ -1078,9 +1078,8 @@ failed:
g_free(pending);
}
-static void query_tracker(const char *query, int num_fields,
- reply_list_foreach_t callback, void *user_data,
- int *err)
+static int query_tracker(const char *query, int num_fields,
+ reply_list_foreach_t callback, void *user_data)
{
struct pending_reply *pending;
GCancellable *cancellable;
@@ -1099,7 +1098,7 @@ static void query_tracker(const char *query, int num_fields,
g_error_free(error);
}
- goto failed;
+ return -EINTR;
}
cancellable = g_cancellable_new();
@@ -1115,7 +1114,7 @@ static void query_tracker(const char *query, int num_fields,
g_object_unref(cancellable);
- goto failed;
+ return -EINTR;
}
pending = g_new0(struct pending_reply, 1);
@@ -1130,14 +1129,7 @@ static void query_tracker(const char *query, int num_fields,
async_query_cursor_next_cb,
pending);
- if (err)
- *err = 0;
-
- return;
-
-failed:
- if (err)
- *err = -EPERM;
+ return 0;
}
static char *iso8601_utc_to_localtime(const char *datetime)
@@ -1877,7 +1869,7 @@ done:
pull_cb = pull_contacts;
}
- query_tracker(query, col_amount, pull_cb, data, &err);
+ err = query_tracker(query, col_amount, pull_cb, data);
if (err < 0)
data->cb(NULL, 0, err, 0, data->user_data);
}
@@ -1888,7 +1880,7 @@ void *phonebook_pull(const char *name, const struct apparam_field *params,
struct phonebook_data *data;
const char *query;
reply_list_foreach_t pull_cb;
- int col_amount;
+ int col_amount, ret;
DBG("name %s", name);
@@ -1916,7 +1908,9 @@ void *phonebook_pull(const char *name, const struct apparam_field *params,
data->params = params;
data->user_data = user_data;
data->cb = cb;
- query_tracker(query, col_amount, pull_cb, data, err);
+ ret = query_tracker(query, col_amount, pull_cb, data);
+ if (err)
+ *err = ret;
return data;
}
@@ -1927,6 +1921,7 @@ void *phonebook_get_entry(const char *folder, const char *id,
{
struct phonebook_data *data;
char *query;
+ int ret;
DBG("folder %s id %s", folder, id);
@@ -1944,8 +1939,9 @@ void *phonebook_get_entry(const char *folder, const char *id,
query = g_strdup_printf(CONTACTS_OTHER_QUERY_FROM_URI,
id, id, id);
- query_tracker(query, PULL_QUERY_COL_AMOUNT,
- pull_contacts, data, err);
+ ret = query_tracker(query, PULL_QUERY_COL_AMOUNT, pull_contacts, data);
+ if (err)
+ *err = ret;
g_free(query);
@@ -1957,6 +1953,7 @@ void *phonebook_create_cache(const char *name, phonebook_entry_cb entry_cb,
{
struct phonebook_data *data;
const char *query;
+ int ret;
DBG("name %s", name);
@@ -1971,7 +1968,9 @@ void *phonebook_create_cache(const char *name, phonebook_entry_cb entry_cb,
data->entry_cb = entry_cb;
data->ready_cb = ready_cb;
data->user_data = user_data;
- query_tracker(query, 7, add_to_cache, data, err);
+ ret = query_tracker(query, 7, add_to_cache, data);
+ if (err)
+ *err = ret;
return data;
}
--
1.7.0.4
next reply other threads:[~2011-02-14 9:19 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-14 9:19 Radoslaw Jablonski [this message]
2011-02-14 9:19 ` [PATCH 2/7 v3] Add return value to reply_list_foreach_t in phonebook-tracker Radoslaw Jablonski
2011-02-14 9:19 ` [PATCH 3/7 v3] Remove unnecessary checking for num_fields in pull_contact Radoslaw Jablonski
2011-02-14 9:19 ` [PATCH 4/7 v3] Support for stop fetching data when maxlistcount is achieved Radoslaw Jablonski
2011-02-14 9:19 ` [PATCH 5/7 v3] Add support for notyfying pbap about more parts from backend Radoslaw Jablonski
2011-02-14 9:19 ` [PATCH 6/7 v3] Introduction of phonebook_pull_read Radoslaw Jablonski
2011-02-14 9:19 ` [PATCH 7/7 v3] Support for multipart response sending from phonebook-tracker Radoslaw Jablonski
2011-02-15 14:21 ` [PATCH 1/7 v3] Add return value to query tracker Johan Hedberg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1297675191-8046-1-git-send-email-ext-jablonski.radoslaw@nokia.com \
--to=ext-jablonski.radoslaw@nokia.com \
--cc=linux-bluetooth@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox