fixed code style
[prss.git] / src / ttrss.c
index 2e50e08..d77007a 100644 (file)
@@ -46,7 +46,7 @@ char *ttrss_get_headline_content(struct headline *h)
        } 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;
@@ -93,6 +93,14 @@ struct headline *ttrss_get_headline(int id)
        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;
@@ -107,8 +115,10 @@ void ttrs_download_headline_content(struct feed **feeds)
                          (*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++;
                }
        }