From b644e5750e9a590e7ea64cc0c4dbda9afaf5643f Mon Sep 17 00:00:00 2001 From: Brian McKenna Date: Fri, 15 Nov 2024 10:45:29 +1100 Subject: [PATCH] Remove broken stack size logic from Windows The API only changes the stack size once there's already a stack overflow exception. Pretty useless. --- src/libutil/current-process.cc | 27 --------------------------- 1 file changed, 27 deletions(-) diff --git a/src/libutil/current-process.cc b/src/libutil/current-process.cc index ac01f441e..46e72b63a 100644 --- a/src/libutil/current-process.cc +++ b/src/libutil/current-process.cc @@ -19,10 +19,6 @@ # include "namespaces.hh" #endif -#ifndef _WIN32 -# include -#endif - namespace nix { unsigned int getMaxCPU() @@ -77,29 +73,6 @@ void setStackSize(size_t stackSize) ); } } - #else - ULONG_PTR stackLow, stackHigh; - GetCurrentThreadStackLimits(&stackLow, &stackHigh); - ULONG maxStackSize = stackHigh - stackLow; - ULONG currStackSize = 0; - // This retrieves the current promised stack size - SetThreadStackGuarantee(&currStackSize); - if (currStackSize < stackSize) { - savedStackSize = currStackSize; - ULONG newStackSize = std::min(static_cast(stackSize), maxStackSize); - if (SetThreadStackGuarantee(&newStackSize) == 0) { - logger->log( - lvlError, - HintFmt( - "Failed to increase stack size from %1% to %2% (maximum allowed stack size: %3%): %4%", - savedStackSize, - stackSize, - maxStackSize, - std::to_string(GetLastError()) - ).str() - ); - } - } #endif }