Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package gstreamer-rtsp-server for
openSUSE:Factory checked in at 2026-04-15 16:04:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gstreamer-rtsp-server (Old)
and /work/SRC/openSUSE:Factory/.gstreamer-rtsp-server.new.21863 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gstreamer-rtsp-server"
Wed Apr 15 16:04:20 2026 rev:72 rq:1346840 version:1.28.2
Changes:
--------
---
/work/SRC/openSUSE:Factory/gstreamer-rtsp-server/gstreamer-rtsp-server.changes
2026-03-05 17:17:35.064703130 +0100
+++
/work/SRC/openSUSE:Factory/.gstreamer-rtsp-server.new.21863/gstreamer-rtsp-server.changes
2026-04-15 16:06:22.447447706 +0200
@@ -1,0 +2,9 @@
+Wed Apr 8 13:22:23 UTC 2026 - Bjørn Lie <[email protected]>
+
+- Update to version 1.28.2:
+ + rtsp-client: Lock media when unlinking session medias
+ + rtsp-stream: Clear send_thread when it's freed
+ + Attempt to use freed thread for reusable RTSP media
+ + Fix a couple of const correctness bugs around strchr() usage
+
+-------------------------------------------------------------------
Old:
----
gst-rtsp-server-1.28.1.obscpio
New:
----
gst-rtsp-server-1.28.2.obscpio
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gstreamer-rtsp-server.spec ++++++
--- /var/tmp/diff_new_pack.jGEjRY/_old 2026-04-15 16:06:23.147476490 +0200
+++ /var/tmp/diff_new_pack.jGEjRY/_new 2026-04-15 16:06:23.147476490 +0200
@@ -20,7 +20,7 @@
%define _name gst-rtsp-server
Name: gstreamer-rtsp-server
-Version: 1.28.1
+Version: 1.28.2
Release: 0
Summary: GStreamer-based RTSP server library
License: LGPL-2.0-or-later
++++++ _service ++++++
--- /var/tmp/diff_new_pack.jGEjRY/_old 2026-04-15 16:06:23.187478135 +0200
+++ /var/tmp/diff_new_pack.jGEjRY/_new 2026-04-15 16:06:23.191478299 +0200
@@ -5,7 +5,7 @@
<param
name="url">https://gitlab.freedesktop.org/gstreamer/gstreamer.git</param>
<param name="subdir">subprojects/gst-rtsp-server</param>
<param name="filename">gst-rtsp-server</param>
- <param name="revision">1.28.1</param>
+ <param name="revision">1.28.2</param>
<param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
<param name="versionrewrite-pattern">v?(.*)\+0</param>
<param name="versionrewrite-replacement">\1</param>
++++++ gst-rtsp-server-1.28.1.obscpio -> gst-rtsp-server-1.28.2.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/gst-rtsp-server-1.28.1/gst/rtsp-server/rtsp-client.c
new/gst-rtsp-server-1.28.2/gst/rtsp-server/rtsp-client.c
--- old/gst-rtsp-server-1.28.1/gst/rtsp-server/rtsp-client.c 2026-02-26
03:09:39.000000000 +0100
+++ new/gst-rtsp-server-1.28.2/gst/rtsp-server/rtsp-client.c 2026-04-07
21:02:23.000000000 +0200
@@ -645,6 +645,12 @@
media = gst_rtsp_session_media_get_media (sessmedia);
n_streams = gst_rtsp_media_n_streams (media);
+ /* Lock the media to synchronize with concurrent request handlers (e.g.
+ * handle_play_request) that hold the media lock while operating on session
+ * resources and emitting signals. Without this, a session timeout could
+ * tear down the media while a play request is still in progress. */
+ gst_rtsp_media_lock (media);
+
for (i = 0; i < n_streams; i++) {
GstRTSPStreamTransport *transport =
gst_rtsp_session_media_get_transport (sessmedia, i);
@@ -664,8 +670,10 @@
if (!is_all_udp || gst_rtsp_media_is_stop_on_disconnect (media)) {
gst_rtsp_session_media_set_state (sessmedia, GST_STATE_NULL);
+ gst_rtsp_media_unlock (media);
return GST_RTSP_FILTER_REMOVE;
} else {
+ gst_rtsp_media_unlock (media);
*closed = FALSE;
return GST_RTSP_FILTER_KEEP;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/gst-rtsp-server-1.28.1/gst/rtsp-server/rtsp-stream.c
new/gst-rtsp-server-1.28.2/gst/rtsp-server/rtsp-stream.c
--- old/gst-rtsp-server-1.28.1/gst/rtsp-server/rtsp-stream.c 2026-02-26
03:09:39.000000000 +0100
+++ new/gst-rtsp-server-1.28.2/gst/rtsp-server/rtsp-stream.c 2026-04-07
21:02:23.000000000 +0200
@@ -2827,13 +2827,14 @@
}
}
+ g_mutex_unlock (&priv->lock);
+
+ g_mutex_lock (&priv->send_lock);
+
if (priv->send_thread == NULL) {
priv->send_thread = g_thread_new (NULL, (GThreadFunc) send_func,
user_data);
}
- g_mutex_unlock (&priv->lock);
-
- g_mutex_lock (&priv->send_lock);
priv->send_cookie++;
g_cond_signal (&priv->send_cond);
g_mutex_unlock (&priv->send_lock);
@@ -4121,6 +4122,7 @@
{
GstRTSPStreamPrivate *priv;
gint i;
+ GThread *send_thread;
g_return_val_if_fail (GST_IS_RTSP_STREAM (stream), FALSE);
g_return_val_if_fail (GST_IS_BIN (bin), FALSE);
@@ -4131,11 +4133,12 @@
g_mutex_lock (&priv->send_lock);
priv->continue_sending = FALSE;
priv->send_cookie++;
+ send_thread = g_steal_pointer (&priv->send_thread);
g_cond_signal (&priv->send_cond);
g_mutex_unlock (&priv->send_lock);
- if (priv->send_thread) {
- g_thread_join (priv->send_thread);
+ if (send_thread) {
+ g_thread_join (send_thread);
}
g_mutex_lock (&priv->lock);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/gst-rtsp-server-1.28.1/gst/rtsp-sink/gstrtspclientsink.c
new/gst-rtsp-server-1.28.2/gst/rtsp-sink/gstrtspclientsink.c
--- old/gst-rtsp-server-1.28.1/gst/rtsp-sink/gstrtspclientsink.c
2026-02-26 03:09:39.000000000 +0100
+++ new/gst-rtsp-server-1.28.2/gst/rtsp-sink/gstrtspclientsink.c
2026-04-07 21:02:23.000000000 +0200
@@ -1551,7 +1551,7 @@
static gboolean
gst_rtsp_client_sink_set_proxy (GstRTSPClientSink * rtsp, const gchar * proxy)
{
- gchar *p, *at, *col;
+ const gchar *p, *at, *col;
g_free (rtsp->proxy_user);
rtsp->proxy_user = NULL;
@@ -1561,7 +1561,7 @@
rtsp->proxy_host = NULL;
rtsp->proxy_port = 0;
- p = (gchar *) proxy;
+ p = proxy;
if (p == NULL)
return TRUE;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/gst-rtsp-server-1.28.1/gst-rtsp-server.doap
new/gst-rtsp-server-1.28.2/gst-rtsp-server.doap
--- old/gst-rtsp-server-1.28.1/gst-rtsp-server.doap 2026-02-26
03:09:39.000000000 +0100
+++ new/gst-rtsp-server-1.28.2/gst-rtsp-server.doap 2026-04-07
21:02:23.000000000 +0200
@@ -32,6 +32,16 @@
<release>
<Version>
+ <revision>1.28.2</revision>
+ <branch>1.28</branch>
+ <name></name>
+ <created>2026-04-07</created>
+ <file-release
rdf:resource="https://gstreamer.freedesktop.org/src/gst-rtsp-server/gst-rtsp-server-1.28.2.tar.xz"
/>
+ </Version>
+ </release>
+
+ <release>
+ <Version>
<revision>1.28.1</revision>
<branch>1.28</branch>
<name></name>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/gst-rtsp-server-1.28.1/meson.build
new/gst-rtsp-server-1.28.2/meson.build
--- old/gst-rtsp-server-1.28.1/meson.build 2026-02-26 03:09:39.000000000
+0100
+++ new/gst-rtsp-server-1.28.2/meson.build 2026-04-07 21:02:23.000000000
+0200
@@ -1,5 +1,5 @@
project('gst-rtsp-server', 'c',
- version : '1.28.1',
+ version : '1.28.2',
meson_version : '>= 1.4',
default_options : ['warning_level=1', 'buildtype=debugoptimized'])
++++++ gst-rtsp-server.obsinfo ++++++
--- /var/tmp/diff_new_pack.jGEjRY/_old 2026-04-15 16:06:23.527492115 +0200
+++ /var/tmp/diff_new_pack.jGEjRY/_new 2026-04-15 16:06:23.535492444 +0200
@@ -1,5 +1,5 @@
name: gst-rtsp-server
-version: 1.28.1
-mtime: 1772071779
-commit: dcb37e20147e3b59344bab1e1cbb57e908cc6b92
+version: 1.28.2
+mtime: 1775588543
+commit: 43421c2a5b8ac5cceb52b11749df40301e1de5c0