Index | Thread | Search

From:
Stuart Henderson <stu@spacehopper.org>
Subject:
Re: freerdp fails on latest snapshot
To:
Fred <openbsd@crowsons.com>
Cc:
mike@marcott.net, ports@openbsd.org
Date:
Fri, 7 Nov 2025 14:11:36 +0000

Download raw body.

Thread
On 2025/11/07 13:57, Fred wrote:
> I'm not the op but I tried your patch and it failed with the following

there was a call missing, try this

? ktrace.out
Index: Makefile
===================================================================
RCS file: /cvs/ports/x11/freerdp/Makefile,v
diff -u -p -r1.73 Makefile
--- Makefile	21 May 2024 08:40:53 -0000	1.73
+++ Makefile	7 Nov 2025 14:11:13 -0000
@@ -1,5 +1,6 @@
 COMMENT =		client for Microsoft RDP (remote desktop protocol)
 DISTNAME =		freerdp-2.11.7
+REVISION =		0
 DPB_PROPERTIES =	parallel
 CATEGORIES =		x11 net
 
@@ -27,6 +28,8 @@ PERMIT_PACKAGE =	Yes
 WANTLIB += X11 Xcursor Xext Xfixes Xi Xinerama Xrandr Xrender Xv
 WANTLIB += avcodec avutil c crypto cups epoll-shim execinfo m pthread sndio
 WANTLIB += ssl swresample usb-1.0 xkbfile
+
+DEBUG_PACKAGES =	${BUILD_PACKAGES}
 
 # thread-local storage; C11
 COMPILER =		base-clang ports-gcc
Index: patches/patch-channels_tsmf_client_ffmpeg_tsmf_ffmpeg_c
===================================================================
RCS file: patches/patch-channels_tsmf_client_ffmpeg_tsmf_ffmpeg_c
diff -N patches/patch-channels_tsmf_client_ffmpeg_tsmf_ffmpeg_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ patches/patch-channels_tsmf_client_ffmpeg_tsmf_ffmpeg_c	7 Nov 2025 14:11:13 -0000
@@ -0,0 +1,22 @@
+Index: channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c
+--- channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c.orig
++++ channels/tsmf/client/ffmpeg/tsmf_ffmpeg.c
+@@ -624,11 +624,18 @@ static void tsmf_ffmpeg_free(ITSMFDecoder* decoder)
+ 
+ 	if (mdecoder->codec_context)
+ 	{
++
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(55, 69, 100)
+ 		if (mdecoder->prepared)
+ 			avcodec_close(mdecoder->codec_context);
++#endif
+ 
+ 		free(mdecoder->codec_context->extradata);
++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 69, 100)
++		avcodec_free_context(&mdecoder->codec_context);
++#else
+ 		av_free(mdecoder->codec_context);
++#endif
+ 	}
+ 
+ 	free(decoder);
Index: patches/patch-libfreerdp_codec_h264_ffmpeg_c
===================================================================
RCS file: patches/patch-libfreerdp_codec_h264_ffmpeg_c
diff -N patches/patch-libfreerdp_codec_h264_ffmpeg_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ patches/patch-libfreerdp_codec_h264_ffmpeg_c	7 Nov 2025 14:11:13 -0000
@@ -0,0 +1,27 @@
+Index: libfreerdp/codec/h264_ffmpeg.c
+--- libfreerdp/codec/h264_ffmpeg.c.orig
++++ libfreerdp/codec/h264_ffmpeg.c
+@@ -100,10 +100,10 @@ static void libavcodec_destroy_encoder(H264_CONTEXT* h
+ 
+ 	if (sys->codecEncoderContext)
+ 	{
+-		avcodec_close(sys->codecEncoderContext);
+ #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 69, 100)
+ 		avcodec_free_context(&sys->codecEncoderContext);
+ #else
++		avcodec_close(sys->codecEncoderContext);
+ 		av_free(sys->codecEncoderContext);
+ #endif
+ 	}
+@@ -430,10 +430,10 @@ static void libavcodec_uninit(H264_CONTEXT* h264)
+ 
+ 	if (sys->codecDecoderContext)
+ 	{
+-		avcodec_close(sys->codecDecoderContext);
+ #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 69, 100)
+ 		avcodec_free_context(&sys->codecDecoderContext);
+ #else
++		avcodec_close(sys->codecDecoderContext);
+ 		av_free(sys->codecDecoderContext);
+ #endif
+ 	}