diff --git a/contrib/src/stc/ScintillaWX.cpp b/contrib/src/stc/ScintillaWX.cpp index 1bf2c8800a..200a36cbf0 100644 --- a/contrib/src/stc/ScintillaWX.cpp +++ b/contrib/src/stc/ScintillaWX.cpp @@ -355,13 +355,14 @@ void ScintillaWX::Paste() { bool ScintillaWX::CanPaste() { - bool canPaste; - - wxTheClipboard->Open(); - wxTheClipboard->UsePrimarySelection(); - canPaste = wxTheClipboard->IsSupported(wxUSE_UNICODE ? wxDF_UNICODETEXT : wxDF_TEXT); - wxTheClipboard->Close(); + bool canPaste = FALSE; + if (! wxTheClipboard->IsOpened()) { + wxTheClipboard->Open(); + wxTheClipboard->UsePrimarySelection(); + canPaste = wxTheClipboard->IsSupported(wxUSE_UNICODE ? wxDF_UNICODETEXT : wxDF_TEXT); + wxTheClipboard->Close(); + } return canPaste; } diff --git a/src/stc/ScintillaWX.cpp b/src/stc/ScintillaWX.cpp index 1bf2c8800a..200a36cbf0 100644 --- a/src/stc/ScintillaWX.cpp +++ b/src/stc/ScintillaWX.cpp @@ -355,13 +355,14 @@ void ScintillaWX::Paste() { bool ScintillaWX::CanPaste() { - bool canPaste; - - wxTheClipboard->Open(); - wxTheClipboard->UsePrimarySelection(); - canPaste = wxTheClipboard->IsSupported(wxUSE_UNICODE ? wxDF_UNICODETEXT : wxDF_TEXT); - wxTheClipboard->Close(); + bool canPaste = FALSE; + if (! wxTheClipboard->IsOpened()) { + wxTheClipboard->Open(); + wxTheClipboard->UsePrimarySelection(); + canPaste = wxTheClipboard->IsSupported(wxUSE_UNICODE ? wxDF_UNICODETEXT : wxDF_TEXT); + wxTheClipboard->Close(); + } return canPaste; }