From 13616cc67e5f2c32c1e06593f7cc3ef178423141 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Sun, 15 Feb 2026 22:46:30 +0100 Subject: [PATCH] [freerdp,codec] mark function pointers [[nodiscard]] --- libfreerdp/codec/h264.h | 6 +++--- libfreerdp/codec/h264_openh264.c | 6 +++--- libfreerdp/codec/test/TestFreeRDPRegion.c | 2 +- libfreerdp/primitives/sse/prim_templates.h | 4 +++- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/libfreerdp/codec/h264.h b/libfreerdp/codec/h264.h index dc758a8b6..59871c823 100644 --- a/libfreerdp/codec/h264.h +++ b/libfreerdp/codec/h264.h @@ -44,10 +44,10 @@ extern "C" struct S_H264_CONTEXT_SUBSYSTEM { const char* name; - pfnH264SubsystemInit Init; + WINPR_ATTR_NODISCARD pfnH264SubsystemInit Init; pfnH264SubsystemUninit Uninit; - pfnH264SubsystemDecompress Decompress; - pfnH264SubsystemCompress Compress; + WINPR_ATTR_NODISCARD pfnH264SubsystemDecompress Decompress; + WINPR_ATTR_NODISCARD pfnH264SubsystemCompress Compress; }; struct S_H264_CONTEXT diff --git a/libfreerdp/codec/h264_openh264.c b/libfreerdp/codec/h264_openh264.c index 59000bb97..fd314a24d 100644 --- a/libfreerdp/codec/h264_openh264.c +++ b/libfreerdp/codec/h264_openh264.c @@ -48,10 +48,10 @@ typedef struct HMODULE lib; OpenH264Version version; #endif - pWelsGetCodecVersionEx WelsGetCodecVersionEx; - pWelsCreateDecoder WelsCreateDecoder; + WINPR_ATTR_NODISCARD pWelsGetCodecVersionEx WelsGetCodecVersionEx; + WINPR_ATTR_NODISCARD pWelsCreateDecoder WelsCreateDecoder; pWelsDestroyDecoder WelsDestroyDecoder; - pWelsCreateSVCEncoder WelsCreateSVCEncoder; + WINPR_ATTR_NODISCARD pWelsCreateSVCEncoder WelsCreateSVCEncoder; pWelsDestroySVCEncoder WelsDestroySVCEncoder; ISVCDecoder* pDecoder; ISVCEncoder* pEncoder; diff --git a/libfreerdp/codec/test/TestFreeRDPRegion.c b/libfreerdp/codec/test/TestFreeRDPRegion.c index d0ca90b7b..478fd338f 100644 --- a/libfreerdp/codec/test/TestFreeRDPRegion.c +++ b/libfreerdp/codec/test/TestFreeRDPRegion.c @@ -832,7 +832,7 @@ typedef int (*TestFunction)(void); struct UnitaryTest { const char* name; - TestFunction func; + WINPR_ATTR_NODISCARD TestFunction func; }; static struct UnitaryTest tests[] = { { "Basic trivial tests", test_basic }, diff --git a/libfreerdp/primitives/sse/prim_templates.h b/libfreerdp/primitives/sse/prim_templates.h index b512d1ba6..9a66dc3ee 100644 --- a/libfreerdp/primitives/sse/prim_templates.h +++ b/libfreerdp/primitives/sse/prim_templates.h @@ -267,7 +267,9 @@ /* Finish off the remainder. */ \ while (len--) \ { \ - _slowWay_; \ + const pstatus_t rc = _slowWay_; \ + if (rc != PRIMITIVES_SUCCESS) \ + return rc; \ } \ return PRIMITIVES_SUCCESS; \ }