aboutsummaryrefslogtreecommitdiffstats
path: root/facebook/facebook-api.c
diff options
context:
space:
mode:
Diffstat (limited to 'facebook/facebook-api.c')
-rw-r--r--facebook/facebook-api.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/facebook/facebook-api.c b/facebook/facebook-api.c
index d12231a..b6f0143 100644
--- a/facebook/facebook-api.c
+++ b/facebook/facebook-api.c
@@ -1215,21 +1215,27 @@ fb_api_xma_parse(FbApi *api, const gchar *body, JsonNode *root, GError **error)
GError *err = NULL;
values = fb_json_values_new(root);
- fb_json_values_add(values, FB_JSON_TYPE_STR, TRUE,
+ fb_json_values_add(values, FB_JSON_TYPE_STR, FALSE,
"$.story_attachment.target.__type__.name");
- fb_json_values_add(values, FB_JSON_TYPE_STR, TRUE,
+ fb_json_values_add(values, FB_JSON_TYPE_STR, FALSE,
"$.story_attachment.url");
fb_json_values_update(values, &err);
if (G_UNLIKELY(err != NULL)) {
g_propagate_error(error, err);
g_object_unref(values);
- return FALSE;
+ return NULL;
}
str = fb_json_values_next_str(values, NULL);
url = fb_json_values_next_str(values, NULL);
+ if ((str == NULL) || (url == NULL)) {
+ g_propagate_error(error, err);
+ g_object_unref(values);
+ return NULL;
+ }
+
if (g_strcmp0(str, "ExternalUrl") == 0) {
prms = fb_http_values_new();
fb_http_values_parse(prms, url, TRUE);