Hello community,

here is the log from the commit of package liferea for openSUSE:Factory checked 
in at 2013-05-28 11:48:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/liferea (Old)
 and      /work/SRC/openSUSE:Factory/.liferea.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "liferea"

Changes:
--------
--- /work/SRC/openSUSE:Factory/liferea/liferea.changes  2013-05-13 
15:08:31.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.liferea.new/liferea.changes     2013-05-28 
11:48:40.000000000 +0200
@@ -1,0 +2,6 @@
+Thu May 23 14:04:04 UTC 2013 - dims...@opensuse.org
+
+- Update to version 1.8.14:
+  + sf#1069: broken rendering in tt-rss feeds.
+
+-------------------------------------------------------------------

Old:
----
  liferea-1.8.13.tar.bz2

New:
----
  liferea-1.8.14.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ liferea.spec ++++++
--- /var/tmp/diff_new_pack.MDsz4l/_old  2013-05-28 11:48:41.000000000 +0200
+++ /var/tmp/diff_new_pack.MDsz4l/_new  2013-05-28 11:48:41.000000000 +0200
@@ -17,13 +17,13 @@
 
 
 Name:           liferea
-Version:        1.8.13
+Version:        1.8.14
 Release:        0
 Summary:        Linux Feed Reader
 License:        GPL-2.0+
 Group:          Productivity/Other
 Url:            http://liferea.sourceforge.net/
-Source:         
http://downloads.sourceforge.net/project/liferea/Liferea%20Stable/1.8.13/%{name}-%{version}.tar.bz2
+Source:         
http://downloads.sourceforge.net/project/liferea/Liferea%20Stable/1.8.14/%{name}-%{version}.tar.bz2
 # PATCH-FEATURE-OPENSUSE liferea-opensuse-feeds.patch -- Add openSUSE feeds to 
default feeds
 Patch0:         liferea-opensuse-feeds.patch
 BuildRequires:  fdupes

++++++ liferea-1.8.13.tar.bz2 -> liferea-1.8.14.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/liferea-1.8.13/ChangeLog new/liferea-1.8.14/ChangeLog
--- old/liferea-1.8.13/ChangeLog        2013-05-12 00:13:24.000000000 +0200
+++ new/liferea-1.8.14/ChangeLog        2013-05-22 23:16:28.000000000 +0200
@@ -1,3 +1,11 @@
+2013-05-22   Lars Windolf <lars.lind...@gmail.com>
+
+       Version 1.8.14
+
+       * Fixes SF #1069: broken rendering in tt-rss feeds 
+         (patch by Simon Kagedal Reimer)
+
+
 2013-05-12   Lars Windolf <lars.lind...@gmail.com>
 
        Version 1.8.13
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/liferea-1.8.13/configure new/liferea-1.8.14/configure
--- old/liferea-1.8.13/configure        2013-05-12 00:14:38.000000000 +0200
+++ new/liferea-1.8.14/configure        2013-05-22 23:17:56.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for liferea 1.8.13.
+# Generated by GNU Autoconf 2.68 for liferea 1.8.14.
 #
 # Report bugs to <liferea-de...@lists.sourceforge.net>.
 #
@@ -570,8 +570,8 @@
 # Identity of this package.
 PACKAGE_NAME='liferea'
 PACKAGE_TARNAME='liferea'
-PACKAGE_VERSION='1.8.13'
-PACKAGE_STRING='liferea 1.8.13'
+PACKAGE_VERSION='1.8.14'
+PACKAGE_STRING='liferea 1.8.14'
 PACKAGE_BUGREPORT='liferea-de...@lists.sourceforge.net'
 PACKAGE_URL=''
 
@@ -1379,7 +1379,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures liferea 1.8.13 to adapt to many kinds of systems.
+\`configure' configures liferea 1.8.14 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1449,7 +1449,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of liferea 1.8.13:";;
+     short | recursive ) echo "Configuration of liferea 1.8.14:";;
    esac
   cat <<\_ACEOF
 
@@ -1582,7 +1582,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-liferea configure 1.8.13
+liferea configure 1.8.14
 generated by GNU Autoconf 2.68
 
 Copyright (C) 2010 Free Software Foundation, Inc.
@@ -1951,7 +1951,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by liferea $as_me 1.8.13, which was
+It was created by liferea $as_me 1.8.14, which was
 generated by GNU Autoconf 2.68.  Invocation command line was
 
   $ $0 $@
@@ -2841,7 +2841,7 @@
 
 # Define the identity of the package.
  PACKAGE='liferea'
- VERSION='1.8.13'
+ VERSION='1.8.14'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -15297,7 +15297,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by liferea $as_me 1.8.13, which was
+This file was extended by liferea $as_me 1.8.14, which was
 generated by GNU Autoconf 2.68.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -15363,7 +15363,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-liferea config.status 1.8.13
+liferea config.status 1.8.14
 configured by $0, generated by GNU Autoconf 2.68,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/liferea-1.8.13/configure.ac 
new/liferea-1.8.14/configure.ac
--- old/liferea-1.8.13/configure.ac     2013-05-12 00:14:32.000000000 +0200
+++ new/liferea-1.8.14/configure.ac     2013-05-22 23:16:10.000000000 +0200
@@ -1,6 +1,6 @@
 dnl Process this file with autoconf to produce a configure script.
 
-AC_INIT([liferea],[1.8.13],[liferea-de...@lists.sourceforge.net])
+AC_INIT([liferea],[1.8.14],[liferea-de...@lists.sourceforge.net])
 AC_CANONICAL_HOST
 AC_CONFIG_SRCDIR([src/feedlist.c])
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/liferea-1.8.13/liferea.desktop 
new/liferea-1.8.14/liferea.desktop
--- old/liferea-1.8.13/liferea.desktop  2013-05-12 00:15:09.000000000 +0200
+++ new/liferea-1.8.14/liferea.desktop  2013-05-22 23:18:02.000000000 +0200
@@ -138,5 +138,5 @@
 Type=Application
 Categories=Network;News;
 Version=0.9.4
-MimeType=application/rss+xml;application/atom+xml;
+MimeType=application/rss+xml;application/atom+xml;application/rdf+xml
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/liferea-1.8.13/liferea.desktop.in 
new/liferea-1.8.14/liferea.desktop.in
--- old/liferea-1.8.13/liferea.desktop.in       2013-05-12 00:12:51.000000000 
+0200
+++ new/liferea-1.8.14/liferea.desktop.in       2013-05-22 23:15:46.000000000 
+0200
@@ -10,5 +10,5 @@
 Type=Application
 Categories=Network;News;
 Version=0.9.4
-MimeType=application/rss+xml;application/atom+xml;
+MimeType=application/rss+xml;application/atom+xml;application/rdf+xml
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/liferea-1.8.13/src/common.c 
new/liferea-1.8.14/src/common.c
--- old/liferea-1.8.13/src/common.c     2013-05-12 00:12:51.000000000 +0200
+++ new/liferea-1.8.14/src/common.c     2013-05-22 23:15:47.000000000 +0200
@@ -358,6 +358,23 @@
        return 0;
 }
 
+gboolean
+common_str_is_empty (const gchar *s)
+{
+       if (s == NULL)
+               return TRUE;
+
+       while (*s != '\0') {
+               if (!g_ascii_isspace (*s))
+                       return FALSE;
+               s++;
+       }
+
+       return TRUE;
+}
+
+
+
 time_t
 common_get_mod_time (const gchar *file)
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/liferea-1.8.13/src/common.h 
new/liferea-1.8.14/src/common.h
--- old/liferea-1.8.13/src/common.h     2013-05-12 00:12:51.000000000 +0200
+++ new/liferea-1.8.14/src/common.h     2013-05-22 23:15:47.000000000 +0200
@@ -167,6 +167,15 @@
 char * common_strcasestr(const char *phaystack, const char *pneedle);
 
 /**
+ * Checks if a string is empty, when leading and trailing whitespace is ignored
+ *
+ * @param string       a string to check
+ *
+ * @returns TRUE if string only contains whitespace or is NULL, FALSE otherwise
+ */
+gboolean common_str_is_empty (const gchar *string);
+
+/**
  * Get file modification timestamp
  *
  * @param *file                the file name
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/liferea-1.8.13/src/fl_sources/ttrss_source_feed.c 
new/liferea-1.8.14/src/fl_sources/ttrss_source_feed.c
--- old/liferea-1.8.13/src/fl_sources/ttrss_source_feed.c       2013-05-12 
00:12:51.000000000 +0200
+++ new/liferea-1.8.14/src/fl_sources/ttrss_source_feed.c       2013-05-22 
23:15:56.000000000 +0200
@@ -30,6 +30,7 @@
 #include "json.h"
 #include "metadata.h"
 #include "subscription.h"
+#include "xml.h"
 
 #include "fl_sources/ttrss_source.h"
 
@@ -67,11 +68,17 @@
                        while (iter) {
                                JsonNode *node = (JsonNode *)iter->data;
                                itemPtr item = item_new ();
+                               const gchar *content;
+                               gchar *xhtml;
                                
                                item_set_id (item, g_strdup_printf ("%lld", 
json_get_int (node, "id")));
                                item_set_title (item, json_get_string (node, 
"title"));
                                item_set_source (item, json_get_string (node, 
"link"));
-                               item_set_description (item, json_get_string 
(node, "content"));
+                               content = json_get_string (node, "content");
+                               xhtml = xhtml_extract_from_string (content, 
NULL);
+                               item_set_description (item, xhtml);
+                               xmlFree (xhtml);
+
                                item->time = json_get_int (node, "updated");
                                
                                if (json_get_bool (node, "unread")) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/liferea-1.8.13/src/vfolder_loader.c 
new/liferea-1.8.14/src/vfolder_loader.c
--- old/liferea-1.8.13/src/vfolder_loader.c     2013-05-12 00:12:51.000000000 
+0200
+++ new/liferea-1.8.14/src/vfolder_loader.c     2013-05-22 23:15:47.000000000 
+0200
@@ -25,6 +25,7 @@
 #include "itemset.h"
 #include "node.h"
 #include "vfolder.h"
+#include "ui/ui_node.h"
 
 #define VFOLDER_LOADER_BATCH_SIZE      100
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/liferea-1.8.13/src/xml.c new/liferea-1.8.14/src/xml.c
--- old/liferea-1.8.13/src/xml.c        2013-05-12 00:12:51.000000000 +0200
+++ new/liferea-1.8.14/src/xml.c        2013-05-22 23:15:47.000000000 +0200
@@ -208,6 +208,33 @@
        return result;
 }
 
+/*
+ * Read HTML string and convert to XHTML, placing in a div tag 
+ */
+gchar *
+xhtml_extract_from_string (const gchar *html, const gchar *defaultBase)
+{
+       xmlDocPtr doc = NULL;
+       xmlNodePtr body = NULL;
+       gchar *result;
+       
+       /* never process empty content, xmlDocCopy() doesn't like it... */
+       if (html != NULL && !common_str_is_empty (html)) {
+               doc = xhtml_parse (html, strlen (html));
+               body = xhtml_find_body (doc);
+               if (body == NULL) 
+                       body = xmlDocGetRootElement (doc);
+       }
+       
+       if (body != NULL)
+               result = xhtml_extract (body, 1, defaultBase);
+       else
+               result = xmlCharStrdup ("<div></div>");
+
+       xmlFreeDoc (doc);
+       return result;
+}
+
 gboolean
 xhtml_is_well_formed (const gchar *data)
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/liferea-1.8.13/src/xml.h new/liferea-1.8.14/src/xml.h
--- old/liferea-1.8.13/src/xml.h        2013-05-12 00:12:51.000000000 +0200
+++ new/liferea-1.8.14/src/xml.h        2013-05-22 23:15:47.000000000 +0200
@@ -55,6 +55,16 @@
  */
 gchar * unxmlize (gchar *string);
 
+/**
+ * Extract XHTML from a string of HTML and place it in a div tag.
+ *
+ * @param html         The HTML
+ * @param nodeBase     An URI to set as xml:base, or #NULL
+ *
+ * @returns XHTML version of the HTML
+ */
+gchar * xhtml_extract_from_string (const gchar *html, const gchar *nodeBase);
+
 /** 
  * Extract XHTML from the children of the passed node.
  *

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to