diff --git a/source/Irrlicht/COSOperator.cpp b/source/Irrlicht/COSOperator.cpp index d777bad9..91fb9412 100644 --- a/source/Irrlicht/COSOperator.cpp +++ b/source/Irrlicht/COSOperator.cpp @@ -71,12 +71,16 @@ void COSOperator::copyToClipboard(const c8* text) const char * buffer; clipbuffer = GlobalAlloc(GMEM_DDESHARE, strlen(text)+1); - buffer = (char*)GlobalLock(clipbuffer); - - strcpy(buffer, text); - - GlobalUnlock(clipbuffer); - SetClipboardData(CF_TEXT, clipbuffer); + if ( clipbuffer ) + { + buffer = (char*)GlobalLock(clipbuffer); + if ( buffer ) + { + strcpy(buffer, text); + } + GlobalUnlock(clipbuffer); + SetClipboardData(CF_TEXT, clipbuffer); + } CloseClipboard(); #elif defined(_IRR_COMPILE_WITH_OSX_DEVICE_)