From 794fe8cd2ff46a78b37cde13ac75cd5f1fb44b4c Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 11 Mar 2005 11:49:44 +0000 Subject: [PATCH] call wxOle[Un]Initialize() in wxClipboard ctor/dtor to ensure that when wxTheClipboard is destroyed at program shutdown and its Clear() method is called OLE is still initialized git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32755 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/msw/clipbrd.cpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/msw/clipbrd.cpp b/src/msw/clipbrd.cpp index 96813f8f58..8955fe8840 100644 --- a/src/msw/clipbrd.cpp +++ b/src/msw/clipbrd.cpp @@ -28,10 +28,6 @@ #pragma hdrstop #endif -#ifndef WX_PRECOMP - #include "wx/setup.h" -#endif - #if wxUSE_CLIPBOARD #ifndef WX_PRECOMP @@ -54,9 +50,10 @@ #include #include "wx/msw/private.h" +#include "wx/msw/ole/oleutils.h" #if wxUSE_WXDIB -#include "wx/msw/dib.h" + #include "wx/msw/dib.h" #endif // wxDataObject is tied to OLE/drag and drop implementation, therefore so are @@ -534,6 +531,10 @@ IMPLEMENT_DYNAMIC_CLASS(wxClipboard, wxObject) wxClipboard::wxClipboard() { +#if wxUSE_OLE_CLIPBOARD + wxOleInitialize(); +#endif + m_clearOnExit = false; m_isOpened = false; } @@ -544,6 +545,10 @@ wxClipboard::~wxClipboard() { Clear(); } + +#if wxUSE_OLE_CLIPBOARD + wxOleUninitialize(); +#endif } void wxClipboard::Clear() -- 2.45.2