From 22da0a2390f37fb03e329139f7f81c933785762e Mon Sep 17 00:00:00 2001 From: Lukasz Pawlik Date: Fri, 3 Sep 2010 12:21:51 +0200 Subject: [PATCH] obexd: Fix problem with phonebook size This patch fix problem with phonebook size during phonebook pull request. Now obexd "combine" the raw results from tracker DB to match with that what phonebook pull returns. --- obexd/plugins/phonebook-tracker.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/obexd/plugins/phonebook-tracker.c b/obexd/plugins/phonebook-tracker.c index bdd958724..2bb5c4f00 100644 --- a/obexd/plugins/phonebook-tracker.c +++ b/obexd/plugins/phonebook-tracker.c @@ -842,13 +842,11 @@ static void pull_contacts(char **reply, int num_fields, void *user_data) data->index++; - /* Just interested in knowing the phonebook size */ - if (!data->vcardentry && params->maxlistcount == 0) - return; - last_index = params->liststartoffset + params->maxlistcount; - if (data->index <= params->liststartoffset || data->index > last_index) + if ((data->index <= params->liststartoffset || + data->index > last_index) && + params->maxlistcount > 0) return; add_entry: @@ -910,8 +908,9 @@ done: vcards = gen_vcards(data->contacts, params); if (num_fields == 0) - data->cb(vcards->str, vcards->len, data->index, 0, - data->user_data); + data->cb(vcards->str, vcards->len, + g_slist_length(data->contacts), 0, + data->user_data); g_slist_free(data->contacts); g_string_free(vcards, TRUE); -- 2.47.3