guix/gnu/packages/patches/vlc-livemedia-2024.11.28.patch
Andreas Enge 733fc8eceb
gnu: vlc: Fix build with newer livemedia-utils.
This is a follow-up to commit 4be2dc6bd3 .

* gnu/packages/patches/vlc-livemedia-2024.11.28.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register patch.
* gnu/packages/video.scm (vlc)[source]: Use patch.

Fixes: guix/guix#4579
Change-Id: Ibee73a199f0d47324d30839a6a6f00b71a72a000
2025-11-30 19:33:56 +01:00

45 lines
1.6 KiB
Diff

From upstream vlc.
From 8befcbfa834b809602db24c9ba7456d8cfc25cdb Mon Sep 17 00:00:00 2001
From: Florian Albrechtskirchinger <falbrechtskirchinger@gmail.com>
Date: Sun, 2 Mar 2025 08:30:43 +0100
Subject: [PATCH] live555: fix build with versions >= 2024.11.28
In the 2024.11.28 release (version 1732752000), live555 introduced
`EventLoopWatchVariable` as a typedef for `std::atomic<char>`, replacing
direct use of `char` in earlier versions. Add a conditional typedef to
define it as `char` for older versions, and update `event_rtsp` and
`event_data` to use `EventLoopWatchVariable`.
---
modules/access/live555.cpp | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/modules/access/live555.cpp b/modules/access/live555.cpp
index 461766661e..cacea3c469 100644
--- a/modules/access/live555.cpp
+++ b/modules/access/live555.cpp
@@ -194,6 +194,10 @@ class RTSPClientVlc;
#define CAP_SUBSESSION_PAUSE (1 << 3)
#define CAPS_DEFAULT CAP_RATE_CONTROL
+#if LIVEMEDIA_LIBRARY_VERSION_INT < 1732752000 // 2024.11.28
+typedef char EventLoopWatchVariable;
+#endif
+
struct demux_sys_t
{
char *p_sdp; /* XXX mallocated */
@@ -232,8 +236,8 @@ struct demux_sys_t
bool b_no_data; /* if we never received any data */
int i_no_data_ti; /* consecutive number of TaskInterrupt */
- char event_rtsp;
- char event_data;
+ EventLoopWatchVariable event_rtsp;
+ EventLoopWatchVariable event_data;
bool b_get_param; /* Does the server support GET_PARAMETER */
bool b_paused; /* Are we paused? */
--
2.52.0