From 7ba75017777e8dd92b1c1b3b39e25d0839fb907f Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 8 Jan 2026 10:32:30 +0100 Subject: [PATCH] [clang,warnings] fix Wjump-misses-init --- libfreerdp/crypto/privatekey.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/libfreerdp/crypto/privatekey.c b/libfreerdp/crypto/privatekey.c index a50fb5743..0e2740e49 100644 --- a/libfreerdp/crypto/privatekey.c +++ b/libfreerdp/crypto/privatekey.c @@ -546,19 +546,24 @@ BYTE* freerdp_key_get_param(const rdpPrivateKey* key, enum FREERDP_KEY_PARAM par if (length < 0) goto fail; - const size_t alloc_size = (size_t)length + 1ull; - buf = calloc(alloc_size, sizeof(BYTE)); + { + const size_t alloc_size = (size_t)length + 1ull; + buf = calloc(alloc_size, sizeof(BYTE)); + } + if (!buf) goto fail; - const int bnlen = BN_bn2bin(bn, buf); - if (bnlen != length) { - free(buf); - buf = NULL; + const int bnlen = BN_bn2bin(bn, buf); + if (bnlen != length) + { + free(buf); + buf = NULL; + } + else + *plength = WINPR_ASSERTING_INT_CAST(size_t, length); } - else - *plength = WINPR_ASSERTING_INT_CAST(size_t, length); fail: BN_free(bn);