---
 src/service.c |   18 +++++++++---------
 1 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/src/service.c b/src/service.c
index f8ad05f..de92487 100644
--- a/src/service.c
+++ b/src/service.c
@@ -1814,7 +1814,7 @@ static gboolean web_get_cb(GWebResult *result, gpointer 
user_data)
 
        if (g_web_result_get_chunk(result, &chunk, &chunk_size) == FALSE) {
                mms_error("Fail to get data chunk");
-               goto error;
+               goto complete;
        }
 
        if (chunk_size == 0) {
@@ -1832,21 +1832,21 @@ static gboolean web_get_cb(GWebResult *result, gpointer 
user_data)
 
        if (written != chunk_size) {
                mms_error("only %zd/%zd bytes written\n", written, chunk_size);
-               goto error;
+               goto complete;
        }
 
        return TRUE;
 
-error:
-       unlink(request->data_path);
-
 complete:
        close(request->fd);
 
-       if (request->result_cb != NULL)
-               request->result_cb(request);
-
-       mms_request_destroy(request);
+       if (request->result_cb == NULL || request->result_cb(request) == TRUE)
+               mms_request_destroy(request);
+       else {
+               mms_error("Fail to get data (http status = %03u)",
+                                                       request->status);
+               unlink(request->data_path);
+       }
 
        request->service->current_request_id = 0;
 
-- 
1.7.4.4

_______________________________________________
ofono mailing list
[email protected]
http://lists.ofono.org/listinfo/ofono

Reply via email to