diff --git a/Sources/Plasma/NucleusLib/pnAsyncCoreExe/Private/Nt/pnAceNtThread.cpp b/Sources/Plasma/NucleusLib/pnAsyncCoreExe/Private/Nt/pnAceNtThread.cpp
index 56fc0ae2..32e808f1 100644
--- a/Sources/Plasma/NucleusLib/pnAsyncCoreExe/Private/Nt/pnAceNtThread.cpp
+++ b/Sources/Plasma/NucleusLib/pnAsyncCoreExe/Private/Nt/pnAceNtThread.cpp
@@ -61,7 +61,6 @@ namespace Nt {
//===========================================================================
void NtSleep (unsigned sleepMs) {
- ThreadAssertCanBlock(__FILE__, __LINE__);
Sleep(sleepMs);
}
diff --git a/Sources/Plasma/NucleusLib/pnAsyncCoreExe/pnAceTimer.cpp b/Sources/Plasma/NucleusLib/pnAsyncCoreExe/pnAceTimer.cpp
index c3a168a4..64889003 100644
--- a/Sources/Plasma/NucleusLib/pnAsyncCoreExe/pnAceTimer.cpp
+++ b/Sources/Plasma/NucleusLib/pnAsyncCoreExe/pnAceTimer.cpp
@@ -307,9 +307,6 @@ void AsyncTimerDelete (
// Wait until the timer procedure completes
if (timerProc) {
- // ensure that I/O worker threads don't call this function with waitComplete=true
- // to prevent a possible deadlock of a timer callback waiting for itself to complete
- ThreadAssertCanBlock(__FILE__, __LINE__);
while (s_timerCurr == timerProc)
Sleep(1);
diff --git a/Sources/Plasma/NucleusLib/pnUtils/CMakeLists.txt b/Sources/Plasma/NucleusLib/pnUtils/CMakeLists.txt
index 8b988d1e..01000e98 100644
--- a/Sources/Plasma/NucleusLib/pnUtils/CMakeLists.txt
+++ b/Sources/Plasma/NucleusLib/pnUtils/CMakeLists.txt
@@ -22,7 +22,6 @@ set(pnUtils_HEADERS
pnUtStr.h
pnUtSync.h
pnUtTime.h
- pnUtTls.h
pnUtUuid.h
)
@@ -50,7 +49,6 @@ if(WIN32)
Win32/pnUtW32Uuid.cpp
pnUtCrypt.cpp
- pnUtTls.cpp
)
else()
set(pnUtils_UNIX
diff --git a/Sources/Plasma/NucleusLib/pnUtils/pnUtAllIncludes.h b/Sources/Plasma/NucleusLib/pnUtils/pnUtAllIncludes.h
index 96305333..6c9a8bdb 100644
--- a/Sources/Plasma/NucleusLib/pnUtils/pnUtAllIncludes.h
+++ b/Sources/Plasma/NucleusLib/pnUtils/pnUtAllIncludes.h
@@ -53,7 +53,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com
#include "pnUtPragma.h"
#include "pnUtAddr.h"
#include "pnUtUuid.h"
-#include "pnUtMath.h"
#include "pnUtSort.h"
#include "pnUtArray.h"
#include "pnUtList.h"
@@ -61,7 +60,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com
#include "pnUtPriQ.h"
#include "pnUtSync.h"
#include "pnUtTime.h"
-#include "pnUtTls.h"
#include "pnUtStr.h"
#include "pnUtRef.h"
#include "pnUtPath.h"
@@ -69,8 +67,5 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com
#include "pnUtCmd.h"
#include "pnUtMisc.h"
#include "pnUtCrypt.h"
-#include "pnUtSpareList.h"
-#include "pnUtRand.h"
-#include "pnUtBase64.h"
#endif // PLASMA20_SOURCES_PLASMA_NUCLEUSLIB_PNUTILS_PRIVATE_PNUTALLINCLUDES_H
diff --git a/Sources/Plasma/NucleusLib/pnUtils/pnUtHash.h b/Sources/Plasma/NucleusLib/pnUtils/pnUtHash.h
index 638a0bb1..c01b30cc 100644
--- a/Sources/Plasma/NucleusLib/pnUtils/pnUtHash.h
+++ b/Sources/Plasma/NucleusLib/pnUtils/pnUtHash.h
@@ -51,7 +51,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com
#include "Pch.h"
#include "pnUtList.h"
#include "pnUtArray.h"
-#include "pnUtMath.h"
#include "pnUtStr.h"
/****************************************************************************
diff --git a/Sources/Plasma/NucleusLib/pnUtils/pnUtTls.cpp b/Sources/Plasma/NucleusLib/pnUtils/pnUtTls.cpp
deleted file mode 100644
index 730af543..00000000
--- a/Sources/Plasma/NucleusLib/pnUtils/pnUtTls.cpp
+++ /dev/null
@@ -1,82 +0,0 @@
-/*==LICENSE==*
-
-CyanWorlds.com Engine - MMOG client, server and tools
-Copyright (C) 2011 Cyan Worlds, Inc.
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see .
-
-Additional permissions under GNU GPL version 3 section 7
-
-If you modify this Program, or any covered work, by linking or
-combining it with any of RAD Game Tools Bink SDK, Autodesk 3ds Max SDK,
-NVIDIA PhysX SDK, Microsoft DirectX SDK, OpenSSL library, Independent
-JPEG Group JPEG library, Microsoft Windows Media SDK, or Apple QuickTime SDK
-(or a modified version of those libraries),
-containing parts covered by the terms of the Bink SDK EULA, 3ds Max EULA,
-PhysX SDK EULA, DirectX SDK EULA, OpenSSL and SSLeay licenses, IJG
-JPEG Library README, Windows Media SDK EULA, or QuickTime SDK EULA, the
-licensors of this Program grant you additional
-permission to convey the resulting work. Corresponding Source for a
-non-source form of such a combination shall include the source code for
-the parts of OpenSSL and IJG JPEG Library used as well as that of the covered
-work.
-
-You can contact Cyan Worlds, Inc. by email legal@cyan.com
- or by snail mail at:
- Cyan Worlds, Inc.
- 14617 N Newport Hwy
- Mead, WA 99021
-
-*==LICENSE==*/
-/*****************************************************************************
-*
-* $/Plasma20/Sources/Plasma/NucleusLib/pnUtils/Private/pnUtTls.cpp
-*
-***/
-
-#include "pnUtTls.h"
-
-
-/*****************************************************************************
-*
-* Exports
-*
-***/
-
-#ifdef HS_BUILD_FOR_WIN32
-
-//============================================================================
-void ThreadLocalAlloc (unsigned * id) {
- ASSERT(id);
- *id = TlsAlloc();
-}
-
-//============================================================================
-void ThreadLocalFree (unsigned id) {
- (void)TlsFree(id);
-}
-
-//============================================================================
-void * ThreadLocalGetValue (unsigned id) {
- return TlsGetValue(id);
-}
-
-//============================================================================
-void ThreadLocalSetValue (unsigned id, void * value) {
- TlsSetValue(id, value);
-}
-
-#else
-# error "TLS not implemented for this platform"
-#endif
diff --git a/Sources/Plasma/NucleusLib/pnUtils/pnUtTls.h b/Sources/Plasma/NucleusLib/pnUtils/pnUtTls.h
deleted file mode 100644
index 815c22f6..00000000
--- a/Sources/Plasma/NucleusLib/pnUtils/pnUtTls.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/*==LICENSE==*
-
-CyanWorlds.com Engine - MMOG client, server and tools
-Copyright (C) 2011 Cyan Worlds, Inc.
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see .
-
-Additional permissions under GNU GPL version 3 section 7
-
-If you modify this Program, or any covered work, by linking or
-combining it with any of RAD Game Tools Bink SDK, Autodesk 3ds Max SDK,
-NVIDIA PhysX SDK, Microsoft DirectX SDK, OpenSSL library, Independent
-JPEG Group JPEG library, Microsoft Windows Media SDK, or Apple QuickTime SDK
-(or a modified version of those libraries),
-containing parts covered by the terms of the Bink SDK EULA, 3ds Max EULA,
-PhysX SDK EULA, DirectX SDK EULA, OpenSSL and SSLeay licenses, IJG
-JPEG Library README, Windows Media SDK EULA, or QuickTime SDK EULA, the
-licensors of this Program grant you additional
-permission to convey the resulting work. Corresponding Source for a
-non-source form of such a combination shall include the source code for
-the parts of OpenSSL and IJG JPEG Library used as well as that of the covered
-work.
-
-You can contact Cyan Worlds, Inc. by email legal@cyan.com
- or by snail mail at:
- Cyan Worlds, Inc.
- 14617 N Newport Hwy
- Mead, WA 99021
-
-*==LICENSE==*/
-/*****************************************************************************
-*
-* $/Plasma20/Sources/Plasma/NucleusLib/pnUtils/Private/pnUtTls.h
-*
-***/
-
-#ifndef PLASMA20_SOURCES_PLASMA_NUCLEUSLIB_PNUTILS_PRIVATE_PNUTTLS_H
-#define PLASMA20_SOURCES_PLASMA_NUCLEUSLIB_PNUTILS_PRIVATE_PNUTTLS_H
-
-#include "Pch.h"
-
-/*****************************************************************************
-*
-* Thread local storage functions
-*
-***/
-
-const unsigned kTlsInvalidValue = (unsigned) -1;
-
-void ThreadLocalAlloc (unsigned * id);
-void ThreadLocalFree (unsigned id);
-void * ThreadLocalGetValue (unsigned id);
-void ThreadLocalSetValue (unsigned id, void * value);
-
-
-// Thread capability functions - prevents deadlocks and performance
-// bottlenecks by disallowing some threads certain operations.
-void ThreadAllowBlock ();
-void ThreadDenyBlock ();
-void ThreadAssertCanBlock (const char file[], int line);
-#endif
diff --git a/Sources/Plasma/NucleusLib/pnUtilsExe/CMakeLists.txt b/Sources/Plasma/NucleusLib/pnUtilsExe/CMakeLists.txt
index 496de2d4..dbe63c74 100644
--- a/Sources/Plasma/NucleusLib/pnUtilsExe/CMakeLists.txt
+++ b/Sources/Plasma/NucleusLib/pnUtilsExe/CMakeLists.txt
@@ -8,7 +8,6 @@ set(pnUtilsExe_HEADERS
set(pnUtilsExe_PRIVATE
Private/pnUteTime.cpp
- Private/pnUteTls.cpp
)
if(WIN32)
diff --git a/Sources/Plasma/NucleusLib/pnUtilsExe/Private/pnUteTls.cpp b/Sources/Plasma/NucleusLib/pnUtilsExe/Private/pnUteTls.cpp
deleted file mode 100644
index 4001806b..00000000
--- a/Sources/Plasma/NucleusLib/pnUtilsExe/Private/pnUteTls.cpp
+++ /dev/null
@@ -1,110 +0,0 @@
-/*==LICENSE==*
-
-CyanWorlds.com Engine - MMOG client, server and tools
-Copyright (C) 2011 Cyan Worlds, Inc.
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see .
-
-Additional permissions under GNU GPL version 3 section 7
-
-If you modify this Program, or any covered work, by linking or
-combining it with any of RAD Game Tools Bink SDK, Autodesk 3ds Max SDK,
-NVIDIA PhysX SDK, Microsoft DirectX SDK, OpenSSL library, Independent
-JPEG Group JPEG library, Microsoft Windows Media SDK, or Apple QuickTime SDK
-(or a modified version of those libraries),
-containing parts covered by the terms of the Bink SDK EULA, 3ds Max EULA,
-PhysX SDK EULA, DirectX SDK EULA, OpenSSL and SSLeay licenses, IJG
-JPEG Library README, Windows Media SDK EULA, or QuickTime SDK EULA, the
-licensors of this Program grant you additional
-permission to convey the resulting work. Corresponding Source for a
-non-source form of such a combination shall include the source code for
-the parts of OpenSSL and IJG JPEG Library used as well as that of the covered
-work.
-
-You can contact Cyan Worlds, Inc. by email legal@cyan.com
- or by snail mail at:
- Cyan Worlds, Inc.
- 14617 N Newport Hwy
- Mead, WA 99021
-
-*==LICENSE==*/
-/*****************************************************************************
-*
-* $/Plasma20/Sources/Plasma/NucleusLib/pnUtilsExe/Private/pnUteTls.cpp
-*
-***/
-
-#include "../Pch.h"
-#pragma hdrstop
-
-#if HS_BUILD_FOR_WIN32
-
-/*****************************************************************************
-*
-* Private data
-*
-***/
-
-static unsigned s_tlsNoBlock = kTlsInvalidValue;
-
-
-/*****************************************************************************
-*
-* Local functions
-*
-***/
-
-//============================================================================
-static void ThreadCapsInitialize () {
- ThreadLocalAlloc(&s_tlsNoBlock);
-}
-
-//============================================================================
-static void ThreadCapsDestroy () {
- if (s_tlsNoBlock != kTlsInvalidValue) {
- ThreadLocalFree(s_tlsNoBlock);
- s_tlsNoBlock = kTlsInvalidValue;
- }
-}
-
-//============================================================================
-AUTO_INIT_FUNC(InitThreadCaps) {
- ThreadCapsInitialize();
- atexit(ThreadCapsDestroy);
-}
-
-
-/*****************************************************************************
-*
-* Exports
-*
-***/
-
-//============================================================================
-void ThreadAllowBlock () {
- ThreadLocalSetValue(s_tlsNoBlock, (void *) false);
-}
-
-//============================================================================
-void ThreadDenyBlock () {
- ThreadLocalSetValue(s_tlsNoBlock, (void *) true);
-}
-
-//============================================================================
-void ThreadAssertCanBlock (const char file[], int line) {
- if (ThreadLocalGetValue(s_tlsNoBlock))
- ErrorAssert(line, file, "This thread may not block");
-}
-
-#endif