git: 858e5fb28cb8 - main - net/liferea: fix crashes when processing comment feeds

From: Christoph Moench-Tegeder <cmt_at_FreeBSD.org>
Date: Sat, 06 Sep 2025 11:06:11 UTC
The branch main has been updated by cmt:

URL: https://cgit.FreeBSD.org/ports/commit/?id=858e5fb28cb82f6d9dc7a3d75ddba4b775f94acc

commit 858e5fb28cb82f6d9dc7a3d75ddba4b775f94acc
Author:     Christoph Moench-Tegeder <cmt@FreeBSD.org>
AuthorDate: 2025-09-06 11:04:41 +0000
Commit:     Christoph Moench-Tegeder <cmt@FreeBSD.org>
CommitDate: 2025-09-06 11:04:41 +0000

    net/liferea: fix crashes when processing comment feeds
    
    this is a quick fix for a regression in 1.16.3
---
 net/liferea/Makefile                  |  1 +
 net/liferea/files/patch-src_itemset.c | 22 ++++++++++++++++++++++
 2 files changed, 23 insertions(+)

diff --git a/net/liferea/Makefile b/net/liferea/Makefile
index e3d252548186..3e389b00e90e 100644
--- a/net/liferea/Makefile
+++ b/net/liferea/Makefile
@@ -1,5 +1,6 @@
 PORTNAME=	liferea
 DISTVERSION=	1.16.3
+PORTREVISION=	1
 CATEGORIES=	net gnome
 MASTER_SITES=	https://github.com/lwindolf/liferea/releases/download/v${DISTVERSION}/
 
diff --git a/net/liferea/files/patch-src_itemset.c b/net/liferea/files/patch-src_itemset.c
new file mode 100644
index 000000000000..30c00fd850de
--- /dev/null
+++ b/net/liferea/files/patch-src_itemset.c
@@ -0,0 +1,22 @@
+diff --git src/itemset.c src/itemset.c
+index 1b4de79e..9cd12fcc 100644
+--- src/itemset.c
++++ src/itemset.c
+@@ -234,7 +234,7 @@ itemset_merge_item (itemSetPtr itemSet, GList *items, itemPtr item, gint maxChec
+ 		itemSet->ids = g_list_prepend (itemSet->ids, GUINT_TO_POINTER (item->id));
+ 
+ 		/* step 3: trigger async enrichment */
+-		if (node->subscription && node->subscription->html5Extract)
++		if (node && node->subscription && node->subscription->html5Extract)
+ 			subscription_enrich_item (node->subscription, item);
+ 
+ 		debug (DEBUG_UPDATE, "-> added \"%s\" (id=%d) to item set %p...", item_get_title (item), item->id, itemSet);
+@@ -258,7 +258,7 @@ itemset_merge_item (itemSetPtr itemSet, GList *items, itemPtr item, gint maxChec
+ 		}
+ 
+ 		/* step 5: Check item for new enclosures to download */
+-		if (node->subscription && node->subscription->encAutoDownload) {
++		if (node && node->subscription && node->subscription->encAutoDownload) {
+ 			GSList *iter = metadata_list_get_values (item->metadata, "enclosure");
+ 			while (iter) {
+ 				enclosurePtr enc = enclosure_from_string (iter->data);