Update to the latest SourcePawn and AMTL.

This commit is contained in:
David Anderson
2016-03-13 16:29:11 -07:00
parent 19bcc8417d
commit f7bb423f06
8 changed files with 25 additions and 16 deletions
+8 -4
View File
@@ -107,16 +107,20 @@ IThreadHandle *PosixThreader::MakeThread(IThread *pThread, const ThreadParams *p
if (params == NULL)
params = &g_defparams;
ke::AutoPtr<ThreadHandle> pHandle(new ThreadHandle(this, pThread, params));
ThreadHandle* pHandle = new ThreadHandle(this, pThread, params);
pHandle->m_thread = new ke::Thread(pHandle.get(), "SourceMod");
if (!pHandle->m_thread->Succeeded())
pHandle->m_thread = new ke::Thread([pHandle]() -> void {
pHandle->Run();
}, "SourceMod");
if (!pHandle->m_thread->Succeeded()) {
delete pHandle;
return NULL;
}
if (!(params->flags & Thread_CreateSuspended))
pHandle->Unpause();
return pHandle.take();
return pHandle;
}
IEventSignal *PosixThreader::MakeEventSignal()
+1 -1
View File
@@ -41,7 +41,7 @@ using namespace SourceMod;
class PosixThreader : public IThreader
{
public:
class ThreadHandle : public IThreadHandle, public ke::IRunnable
class ThreadHandle : public IThreadHandle
{
friend class PosixThreader;
public:
+9 -5
View File
@@ -106,11 +106,15 @@ IThreadHandle *WinThreader::MakeThread(IThread *pThread, const ThreadParams *par
if (params == NULL)
params = &g_defparams;
ke::AutoPtr<ThreadHandle> pHandle(new ThreadHandle(this, pThread, params));
ThreadHandle* pHandle = new ThreadHandle(this, pThread, params);
pHandle->m_thread = new ke::Thread(pHandle.get(), "SourceMod");
if (!pHandle->m_thread->Succeeded())
return NULL;
pHandle->m_thread = new ke::Thread([pHandle]() -> void {
pHandle->Run();
}, "SourceMod");
if (!pHandle->m_thread->Succeeded()) {
delete pHandle;
return nullptr;
}
if (pHandle->m_params.prio != ThreadPrio_Normal)
pHandle->SetPriority(pHandle->m_params.prio);
@@ -118,7 +122,7 @@ IThreadHandle *WinThreader::MakeThread(IThread *pThread, const ThreadParams *par
if (!(params->flags & Thread_CreateSuspended))
pHandle->Unpause();
return pHandle.take();
return pHandle;
}
IEventSignal *WinThreader::MakeEventSignal()
+1 -1
View File
@@ -42,7 +42,7 @@ using namespace SourceMod;
class WinThreader : public IThreader
{
public:
class ThreadHandle : public IThreadHandle, public ke::IRunnable
class ThreadHandle : public IThreadHandle
{
friend class WinThreader;
friend DWORD WINAPI Win32_ThreadGate(LPVOID param);