On 2025/11/07 14:11, Stuart Henderson wrote:
> 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

actually, I'll just commit it, along with USE_NOBTCFI for now.

> ? 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
> +     }
> 

Reply via email to