From 6eb8153a99acb83cc321474ac22251b59e076a27 Mon Sep 17 00:00:00 2001 From: srkizer Date: Fri, 22 Dec 2023 10:56:01 +0900 Subject: [PATCH] Add missing EmptyClipboard (#1584) * Add missing EmptyClipboard * Fix missing GlobalUnlock --- Dalamud/Interface/Internal/ImGuiClipboardFunctionProvider.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Dalamud/Interface/Internal/ImGuiClipboardFunctionProvider.cs b/Dalamud/Interface/Internal/ImGuiClipboardFunctionProvider.cs index fd07d824f..1746fb1c4 100644 --- a/Dalamud/Interface/Internal/ImGuiClipboardFunctionProvider.cs +++ b/Dalamud/Interface/Internal/ImGuiClipboardFunctionProvider.cs @@ -131,6 +131,7 @@ internal sealed unsafe class ImGuiClipboardFunctionProvider : IServiceType, IDis ptr[str.Length] = default; GlobalUnlock(hMem); + EmptyClipboard(); SetClipboardData(CF.CF_UNICODETEXT, hMem); } catch (Exception e) @@ -158,9 +159,9 @@ internal sealed unsafe class ImGuiClipboardFunctionProvider : IServiceType, IDis return this.clipboardData.Data; } + var hMem = (HGLOBAL)GetClipboardData(CF.CF_UNICODETEXT); try { - var hMem = (HGLOBAL)GetClipboardData(CF.CF_UNICODETEXT); if (hMem != default) { var ptr = (char*)GlobalLock(hMem); @@ -191,6 +192,8 @@ internal sealed unsafe class ImGuiClipboardFunctionProvider : IServiceType, IDis } finally { + if (hMem != default) + GlobalUnlock(hMem); CloseClipboard(); }