[OLE32] -Recreate the clipboard window if it isn't a valid window handle. Can happen if the thread that first used the ole clipboard exists which also leads to the clipboard window being destroyed.

svn path=/trunk/; revision=75637
This commit is contained in:
Giannis Adamopoulos 2017-08-22 08:02:30 +00:00
parent 6bb9ea74e5
commit 8da0a3a46d

View file

@ -1869,6 +1869,12 @@ static HWND create_clipbrd_window(void);
*/
static inline HRESULT get_clipbrd_window(ole_clipbrd *clipbrd, HWND *wnd)
{
#ifdef __REACTOS__
/* The clipboard window can get destroyed if the thread that created it dies so we may need to create it again */
if (!IsWindow(clipbrd->window))
clipbrd->window = create_clipbrd_window();
#endif
if ( !clipbrd->window )
clipbrd->window = create_clipbrd_window();