From c608bcc3dfab2abe7b66c10f8556086b2d45b3a3 Mon Sep 17 00:00:00 2001 From: nirav Date: Sun, 17 Mar 2019 10:17:15 +0530 Subject: Fix load_timeline --- src/status.c | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) (limited to 'src/status.c') diff --git a/src/status.c b/src/status.c index 139c719..69d1fa2 100644 --- a/src/status.c +++ b/src/status.c @@ -5,39 +5,40 @@ #include "status.h" #include "log.h" -struct status *status_from_json(char *json_data) +struct status *status_from_json(const char *json_data) { + struct status *s; json_t *root; json_error_t error; root = json_loads(json_data, 0, &error); if (!root) { - log_msg(LOG_ERROR, "status_from_json", "json parse error: line %d: %s", + log_msg(LOG_WARNING, "status_from_json", "json parse error: line %d: %s", error.line, error.text); return NULL; } - return status_from_json_t(root); + s = status_from_json_t(root); + json_decref(root); + return s; } -struct status *status_from_json_t(json_t *root) +struct status *status_from_json_t(const json_t *root) { struct status *s; if (!root) { - log_msg(LOG_ERROR, "status_from_json_t", "json data is null"); + log_msg(LOG_WARNING, "status_from_json_t", "json data is null"); return NULL; } if (!json_is_object(root)) { - log_msg(LOG_ERROR, "status_from_json_t", "json root is not object"); - json_decref(root); + log_msg(LOG_WARNING, "status_from_json_t", "json root is not object"); return NULL; } s = calloc(1, sizeof(struct status)); if (!s) { - err(1, NULL); - json_decref(root); + err(1, "status_from_json_t"); return NULL; } @@ -88,16 +89,11 @@ struct status *status_from_json_t(json_t *root) s->favourites_count = json_integer_value(favourites_count); } - json_decref(root); return s; } void status_free(struct status *s) { - if (!s) { - log_msg(LOG_ERROR, "status_free", "status not initializes"); - return; - } if (s->id) free(s->id); if (s->uri) -- cgit v1.2.3