Permalink
Browse files

Initialise OLE in RemoteVstPlugin

Some plugins don't initialise it themselves, expecting it already to be
done for them, and so are liable to hang without it (e.g. TX16Wx).

Co-authored-by: Hyunjin Song <tteu.ingog@gmail.com>
Co-authored-by: Dominic Clark <mrdomclark@gmail.com>
  • Loading branch information...
3 people committed May 18, 2018
1 parent 0ad8527 commit 4c7c68f45a3414f355ec2b17ff235943f93bd199
Showing with 4 additions and 1 deletion.
  1. +1 −1 plugins/vst_base/CMakeLists.txt
  2. +3 −0 plugins/vst_base/RemoteVstPlugin.cpp
@@ -56,7 +56,7 @@ SET(WINE_CXX_ARGS
-L${WINE_LIBRARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/RemoteVstPlugin.cpp
-std=c++0x
-mwindows -lpthread ${EXTRA_FLAGS} -fno-omit-frame-pointer
-mwindows -lpthread -lole32 ${EXTRA_FLAGS} -fno-omit-frame-pointer
${WINE_BUILD_FLAGS}
-o ../RemoteVstPlugin
)
@@ -2061,6 +2061,8 @@ int main( int _argc, char * * _argv )
return -1;
}
OleInitialize(nullptr);

This comment has been minimized.

Show comment
Hide comment
@falkTX

falkTX Sep 12, 2018

Contributor

shouldn't this go inside LMMS_BUILD_WIN32 ?

@falkTX

falkTX Sep 12, 2018

Contributor

shouldn't this go inside LMMS_BUILD_WIN32 ?

This comment has been minimized.

Show comment
Hide comment
@DomClark

DomClark Sep 18, 2018

Member

No - on Linux, LMMS uses Wine to run Windows VST plugins, so the fix is required there as well. See the discussion in #4366.

@DomClark

DomClark Sep 18, 2018

Member

No - on Linux, LMMS uses Wine to run Windows VST plugins, so the fix is required there as well. See the discussion in #4366.

#ifdef LMMS_BUILD_WIN32
#ifndef __WINPTHREADS_VERSION
// (non-portable) initialization of statically linked pthread library
@@ -2176,6 +2178,7 @@ int main( int _argc, char * * _argv )
delete __plugin;
OleUninitialize();
#ifdef LMMS_BUILD_WIN32
#ifndef __WINPTHREADS_VERSION

0 comments on commit 4c7c68f

Please sign in to comment.