} else {
log_debug("ttrss_get_headline_content: cache miss");
content = ws_get_article_content(h->id);
- cache_put(h, content);
+ cache_put(h->id, content);
}
return content;
return feeds_get_headline(data, id);
}
+static void get_article_content_cbk(int id, const char *content)
+{
+ printf("get_article_content_cbk %d\n", id);
+
+ if (content)
+ cache_put(id, content);
+}
+
void ttrs_download_headline_content(struct feed **feeds)
{
struct feed **fcur;
(*fcur)->title);
while (hcur && *hcur) {
- if (!cache_exists(*hcur))
- free(ttrss_get_headline_content(*hcur));
+ if (!cache_exists(*hcur)) {
+ ws_async_get_article_content
+ ((*hcur)->id, get_article_content_cbk);
+ }
hcur++;
}
}