use _beginthreadex() for mingw32 if possible
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@6336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -454,7 +454,9 @@ bool wxThreadInternal::Create(wxThread *thread)
|
|||||||
// for compilers which have it, we should use C RTL function for thread
|
// for compilers which have it, we should use C RTL function for thread
|
||||||
// creation instead of Win32 API one because otherwise we will have memory
|
// creation instead of Win32 API one because otherwise we will have memory
|
||||||
// leaks if the thread uses C RTL (and most threads do)
|
// leaks if the thread uses C RTL (and most threads do)
|
||||||
#if defined(__VISUALC__) || (defined(__BORLANDC__) && (__BORLANDC__ >= 0x500))
|
#if defined(__VISUALC__) || \
|
||||||
|
(defined(__BORLANDC__) && (__BORLANDC__ >= 0x500)) \\
|
||||||
|
(defined(__GNUG__) && defined(__MSVCRT__)
|
||||||
typedef unsigned (__stdcall *RtlThreadStart)(void *);
|
typedef unsigned (__stdcall *RtlThreadStart)(void *);
|
||||||
|
|
||||||
m_hThread = (HANDLE)_beginthreadex(NULL, 0,
|
m_hThread = (HANDLE)_beginthreadex(NULL, 0,
|
||||||
@@ -462,7 +464,7 @@ bool wxThreadInternal::Create(wxThread *thread)
|
|||||||
wxThreadInternal::WinThreadStart,
|
wxThreadInternal::WinThreadStart,
|
||||||
thread, CREATE_SUSPENDED,
|
thread, CREATE_SUSPENDED,
|
||||||
(unsigned int *)&m_tid);
|
(unsigned int *)&m_tid);
|
||||||
#else // !VC++
|
#else // compiler doesn't have _beginthreadex
|
||||||
m_hThread = ::CreateThread
|
m_hThread = ::CreateThread
|
||||||
(
|
(
|
||||||
NULL, // default security
|
NULL, // default security
|
||||||
@@ -473,7 +475,7 @@ bool wxThreadInternal::Create(wxThread *thread)
|
|||||||
CREATE_SUSPENDED, // flags
|
CREATE_SUSPENDED, // flags
|
||||||
&m_tid // [out] thread id
|
&m_tid // [out] thread id
|
||||||
);
|
);
|
||||||
#endif // VC++/!VC++
|
#endif // _beginthreadex/CreateThread
|
||||||
|
|
||||||
if ( m_hThread == NULL )
|
if ( m_hThread == NULL )
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user