(no commit message)
[prss.git] / src / ttrss_model.c
index c67ad65..c65a710 100644 (file)
@@ -81,8 +81,43 @@ struct headline *feed_get_headline(struct feed *feed, int id)
        return NULL;
 }
 
+void headline_free(struct headline *headline)
+{
+       if (headline) {
+               free(headline->url);
+               free(headline->title);
+               free(headline->excerpt);
+               free(headline->content);
+               free(headline);
+       }
+}
+
+struct headline *headline_new(int id, const char *url, const char *title)
+{
+       struct headline *h;
+
+       h = malloc(sizeof(struct headline));
+       h->id = id;
+       h->url = strdup(url);
+       h->title = strdup(title);
+       h->excerpt = NULL;
+       h->content = NULL;
+       
+       return h;
+}
+
 void headlines_free(struct headline **headlines)
 {
+       struct headline **cur;
+
+       if (headlines) {
+               cur = headlines;
+               while (*cur) {
+                       headline_free(*cur);
+                       cur++;
+               }
+               free(headlines);
+       }
 }
 
 void feed_free(struct feed *feed)