git: fd571ce26daa - main - audio/exaile: fix runtime with recent gstreamer update

From: Ruslan Makhmatkhanov <rm_at_FreeBSD.org>
Date: Tue, 17 Mar 2026 13:47:08 UTC
The branch main has been updated by rm:

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

commit fd571ce26daa30e8cf245d2d42c7a36cdea361d5
Author:     Ruslan Makhmatkhanov <rm@FreeBSD.org>
AuthorDate: 2026-03-17 13:43:53 +0000
Commit:     Ruslan Makhmatkhanov <rm@FreeBSD.org>
CommitDate: 2026-03-17 13:43:53 +0000

    audio/exaile: fix runtime with recent gstreamer update
    
    Gstreamer 1.28 introduced breaking change to python API, so add a quick
    fix obtained from here: https://github.com/exaile/exaile/issues/999
    
    Reported by:    Keith <ukyo-nyan@theia.ocn.ne.jp> (private email)
---
 audio/exaile/Makefile                          |  1 +
 audio/exaile/files/patch-xl_player_gst_sink.py | 16 ++++++++++++++++
 2 files changed, 17 insertions(+)

diff --git a/audio/exaile/Makefile b/audio/exaile/Makefile
index 1105ac8730b3..c6a08dd32335 100644
--- a/audio/exaile/Makefile
+++ b/audio/exaile/Makefile
@@ -1,5 +1,6 @@
 PORTNAME=	exaile
 DISTVERSION=	4.2.1
+PORTREVISION=	1
 CATEGORIES=	audio
 
 MAINTAINER=	rm@FreeBSD.org
diff --git a/audio/exaile/files/patch-xl_player_gst_sink.py b/audio/exaile/files/patch-xl_player_gst_sink.py
new file mode 100644
index 000000000000..a987594b73d2
--- /dev/null
+++ b/audio/exaile/files/patch-xl_player_gst_sink.py
@@ -0,0 +1,16 @@
+https://github.com/exaile/exaile/issues/999
+
+--- xl/player/gst/sink.py.orig	2025-12-08 18:00:20 UTC
++++ xl/player/gst/sink.py
+@@ -83,7 +83,10 @@ def __filter_presets():
+ def __filter_presets():
+     for name, preset in list(SINK_PRESETS.items()):
+         pipe = preset.get('pipe')
+-        if pipe and not Gst.ElementFactory.make(pipe):
++        try:
++            if pipe and not Gst.ElementFactory.make(pipe):
++                del SINK_PRESETS[name]
++        except Exception:
+             del SINK_PRESETS[name]
+ 
+