From 31a5c612642d1b4937473a8889f415987e12df3a Mon Sep 17 00:00:00 2001 From: vcaesar Date: Tue, 7 May 2019 13:57:07 -0400 Subject: [PATCH] update clipboard error hand Fixed #212 --- clipboard/clipboard_windows.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/clipboard/clipboard_windows.go b/clipboard/clipboard_windows.go index 93285dd..7111e81 100644 --- a/clipboard/clipboard_windows.go +++ b/clipboard/clipboard_windows.go @@ -99,6 +99,7 @@ func writeAll(text string) error { if h == 0 { return err } + defer func() { if h != 0 { globalFree.Call(h) @@ -116,17 +117,17 @@ func writeAll(text string) error { } r, _, err = globalUnlock.Call(h) - if r == 0 { - return err - } - - r, _, err = setClipboardData.Call(cfUnicodetext, h) if r == 0 { if err.(syscall.Errno) != 0 { return err } } + r, _, err = setClipboardData.Call(cfUnicodetext, h) + if r == 0 { + return err + } + h = 0 // suppress deferred cleanup return nil }