From 40f6bd71dd8d4025f8d4f5ce2b86c9af1ecc2bdd Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 8 Jan 2026 10:32:29 +0100 Subject: [PATCH] [clang,warnings] fix Wjump-misses-init --- client/Wayland/wlf_cliprdr.c | 162 +++++++++++++++++++---------------- 1 file changed, 86 insertions(+), 76 deletions(-) diff --git a/client/Wayland/wlf_cliprdr.c b/client/Wayland/wlf_cliprdr.c index bf1675034..4fe89fab7 100644 --- a/client/Wayland/wlf_cliprdr.c +++ b/client/Wayland/wlf_cliprdr.c @@ -793,24 +793,26 @@ wlf_cliprdr_server_format_data_request(CliprdrClientContext* context, goto fail; } - const BOOL res = ClipboardSetData(clipboard->system, localFormatId, data, (UINT32)size); - free(data); - - UINT32 len = 0; - data = NULL; - if (res) - data = ClipboardGetData(clipboard->system, formatId, &len); - - if (!res || !data) - goto fail; - - if (fileFormatId == formatId) { - const UINT32 flags = cliprdr_file_context_remote_get_flags(clipboard->file); - const UINT32 error = cliprdr_serialize_file_list_ex( - flags, (const FILEDESCRIPTORW*)data, len / sizeof(FILEDESCRIPTORW), &ddata, &dsize); - if (error) + const BOOL res = ClipboardSetData(clipboard->system, localFormatId, data, (UINT32)size); + free(data); + + UINT32 len = 0; + data = NULL; + if (res) + data = ClipboardGetData(clipboard->system, formatId, &len); + + if (!res || !data) goto fail; + + if (fileFormatId == formatId) + { + const UINT32 flags = cliprdr_file_context_remote_get_flags(clipboard->file); + const UINT32 error = cliprdr_serialize_file_list_ex( + flags, (const FILEDESCRIPTORW*)data, len / sizeof(FILEDESCRIPTORW), &ddata, &dsize); + if (error) + goto fail; + } } fail: ClipboardUnlock(clipboard->system); @@ -855,70 +857,76 @@ wlf_cliprdr_server_format_data_response(CliprdrClientContext* context, ClipboardLock(clipboard->system); EnterCriticalSection(&clipboard->lock); - - BYTE* cdata = NULL; - UINT32 srcFormatId = 0; - UINT32 dstFormatId = 0; - switch (request->responseFormat) { - case CF_TEXT: - case CF_OEMTEXT: - case CF_UNICODETEXT: - srcFormatId = request->responseFormat; - dstFormatId = ClipboardGetFormatId(clipboard->system, request->responseMime); - break; - - case CF_DIB: - case CF_DIBV5: - srcFormatId = request->responseFormat; - dstFormatId = ClipboardGetFormatId(clipboard->system, request->responseMime); - break; - - default: + BYTE* cdata = NULL; + UINT32 srcFormatId = 0; + UINT32 dstFormatId = 0; + switch (request->responseFormat) { - const char* name = wlf_get_server_format_name(clipboard, request->responseFormat); - if (name) - { - if (strcmp(type_FileGroupDescriptorW, name) == 0) - { - srcFormatId = - ClipboardGetFormatId(clipboard->system, type_FileGroupDescriptorW); - dstFormatId = ClipboardGetFormatId(clipboard->system, request->responseMime); + case CF_TEXT: + case CF_OEMTEXT: + case CF_UNICODETEXT: + srcFormatId = request->responseFormat; + dstFormatId = ClipboardGetFormatId(clipboard->system, request->responseMime); + break; - if (!cliprdr_file_context_update_server_data(clipboard->file, clipboard->system, - data, size)) - goto unlock; - } - else if (strcmp(type_HtmlFormat, name) == 0) + case CF_DIB: + case CF_DIBV5: + srcFormatId = request->responseFormat; + dstFormatId = ClipboardGetFormatId(clipboard->system, request->responseMime); + break; + + default: + { + const char* name = wlf_get_server_format_name(clipboard, request->responseFormat); + if (name) { - srcFormatId = ClipboardGetFormatId(clipboard->system, type_HtmlFormat); - dstFormatId = ClipboardGetFormatId(clipboard->system, request->responseMime); + if (strcmp(type_FileGroupDescriptorW, name) == 0) + { + srcFormatId = + ClipboardGetFormatId(clipboard->system, type_FileGroupDescriptorW); + dstFormatId = + ClipboardGetFormatId(clipboard->system, request->responseMime); + + if (!cliprdr_file_context_update_server_data(clipboard->file, + clipboard->system, data, size)) + goto unlock; + } + else if (strcmp(type_HtmlFormat, name) == 0) + { + srcFormatId = ClipboardGetFormatId(clipboard->system, type_HtmlFormat); + dstFormatId = + ClipboardGetFormatId(clipboard->system, request->responseMime); + } } } + break; } - break; + { + UINT32 len = 0; + + { + const BOOL sres = ClipboardSetData(clipboard->system, srcFormatId, data, size); + if (sres) + cdata = ClipboardGetData(clipboard->system, dstFormatId, &len); + + if (!sres || !cdata) + goto unlock; + } + + if (request->responseFile) + { + const size_t res = fwrite(cdata, 1, len, request->responseFile); + if (res == len) + rc = CHANNEL_RC_OK; + } + else + rc = CHANNEL_RC_OK; + } + + unlock: + free(cdata); } - - UINT32 len = 0; - - const BOOL sres = ClipboardSetData(clipboard->system, srcFormatId, data, size); - if (sres) - cdata = ClipboardGetData(clipboard->system, dstFormatId, &len); - - if (!sres || !cdata) - goto unlock; - - if (request->responseFile) - { - const size_t res = fwrite(cdata, 1, len, request->responseFile); - if (res == len) - rc = CHANNEL_RC_OK; - } - else - rc = CHANNEL_RC_OK; - -unlock: - free(cdata); ClipboardUnlock(clipboard->system); LeaveCriticalSection(&clipboard->lock); fail: @@ -958,10 +966,12 @@ wfClipboard* wlf_clipboard_new(wlfContext* wfc) if (!clipboard->request_queue) goto fail; - wObject* obj = Queue_Object(clipboard->request_queue); - WINPR_ASSERT(obj); - obj->fnObjectFree = wlf_request_free; - obj->fnObjectNew = wlf_request_clone; + { + wObject* obj = Queue_Object(clipboard->request_queue); + WINPR_ASSERT(obj); + obj->fnObjectFree = wlf_request_free; + obj->fnObjectNew = wlf_request_clone; + } return clipboard;