diff options
Diffstat (limited to 'facebook/facebook-api.c')
-rw-r--r-- | facebook/facebook-api.c | 12 |
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); |