diff --git a/clipboard/clipboard_darwin.go b/clipboard/clipboard_darwin.go index 6f33078..58d4a2d 100644 --- a/clipboard/clipboard_darwin.go +++ b/clipboard/clipboard_darwin.go @@ -48,5 +48,6 @@ func writeAll(text string) error { if err := in.Close(); err != nil { return err } + return copyCmd.Wait() } diff --git a/clipboard/clipboard_unix.go b/clipboard/clipboard_unix.go index 76d7611..dcae808 100644 --- a/clipboard/clipboard_unix.go +++ b/clipboard/clipboard_unix.go @@ -67,11 +67,13 @@ func readAll() (string, error) { if Unsupported { return "", errMissingCommands } + pasteCmd := getPasteCommand() out, err := pasteCmd.Output() if err != nil { return "", err } + return string(out), nil } @@ -94,5 +96,6 @@ func writeAll(text string) error { if err := in.Close(); err != nil { return err } + return copyCmd.Wait() } diff --git a/clipboard/clipboard_windows.go b/clipboard/clipboard_windows.go index 7111e81..406bb65 100644 --- a/clipboard/clipboard_windows.go +++ b/clipboard/clipboard_windows.go @@ -38,8 +38,10 @@ var ( func waitOpenClipboard() error { started := time.Now() limit := started.Add(time.Second) - var r uintptr - var err error + var ( + r uintptr + err error + ) for time.Now().Before(limit) { r, _, err = openClipboard.Call(0) if r != 0 { @@ -47,6 +49,7 @@ func waitOpenClipboard() error { } time.Sleep(time.Millisecond) } + return err }