Update to the latest SourcePawn and AMTL.
This commit is contained in:
parent
19bcc8417d
commit
f7bb423f06
@ -537,7 +537,9 @@ bool DBManager::AddToThreadQueue(IDBThreadOperation *op, PrioQueueLevel prio)
|
||||
|
||||
if (!m_Worker)
|
||||
{
|
||||
m_Worker = new ke::Thread(this, "SM SQL Worker");
|
||||
m_Worker = new ke::Thread([this]() -> void {
|
||||
Run();
|
||||
}, "SM SQL Worker");
|
||||
if (!m_Worker->Succeeded())
|
||||
{
|
||||
if (!s_OneTimeThreaderErrorMsg)
|
||||
|
@ -65,8 +65,7 @@ class DBManager :
|
||||
public SMGlobalClass,
|
||||
public IHandleTypeDispatch,
|
||||
public ITextListener_SMC,
|
||||
public IPluginsListener,
|
||||
public ke::IRunnable
|
||||
public IPluginsListener
|
||||
{
|
||||
public:
|
||||
DBManager();
|
||||
|
@ -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()
|
||||
|
@ -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:
|
||||
|
@ -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()
|
||||
|
@ -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);
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit 522057068a520d75acca00f6682f4d06d1ae18a4
|
||||
Subproject commit ae57753e79a957d8578421f37043e6bea1603f65
|
@ -1 +1 @@
|
||||
Subproject commit c0cfda875390ae0cdd9055e53d0a06db6ce5ea18
|
||||
Subproject commit 594bfbb5e46a47ed57af28786254e9fb8c2c506f
|
Loading…
Reference in New Issue
Block a user