From 11a5539eb18a262b94f2f0dcb45fa239659ad341 Mon Sep 17 00:00:00 2001 From: Vinicius Costa Gomes Date: Tue, 8 Jun 2010 15:51:31 -0300 Subject: [PATCH] obexd: Fix PBAP Tracker backend setPhonebook response In the case of malformed requests we could respond with the wrong error code or even success. --- obexd/plugins/phonebook-tracker.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/obexd/plugins/phonebook-tracker.c b/obexd/plugins/phonebook-tracker.c index 6c3d13a2a..46d18350c 100644 --- a/obexd/plugins/phonebook-tracker.c +++ b/obexd/plugins/phonebook-tracker.c @@ -598,7 +598,8 @@ char *phonebook_set_folder(const char *current_folder, const char *new_folder, { char *tmp1, *tmp2, *base, *path = NULL; gboolean root, child; - int ret, len; + int ret = 0; + int len; root = (g_strcmp0("/", current_folder) == 0); child = (new_folder && strlen(new_folder) != 0); @@ -654,13 +655,11 @@ char *phonebook_set_folder(const char *current_folder, const char *new_folder, } done: - - if (!folder_is_valid(path)) { + if (ret || !folder_is_valid(path)) { g_free(path); path = NULL; - ret = -ENOENT; - } else - ret = 0; + ret = ret ? ret : -ENOENT; + } if (err) *err = ret; -- 2.47.3