mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
windows: Configure stack size for executables (fixes issue #3250)
Change the default stack size to 8 MiB for 64-bit and 0.5 MiB for 32-bit. CEF's main thread needs at least a 1.5 MiB stack size in order to avoid stack overflow crashes. However, if this is set in the PE file then other threads get this size as well, leading to address-space exhaustion in 32-bit CEF. A new CefRunWinMainWithPreferredStackSize function uses fibers to switch the main thread to a 4 MiB stack (roughly the same effective size as the 64-bit build's 8 MiB stack) before running any other code. This change additionally moves the existing Windows-only functions CefSetOSModalLoop and CefEnableHighDPISupport from cef_app.h to cef_win.h.
This commit is contained in:
@@ -12,10 +12,6 @@
|
||||
#include "base/threading/platform_thread.h"
|
||||
#include "base/trace_event/trace_event.h"
|
||||
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
#include "base/win/win_util.h"
|
||||
#endif
|
||||
|
||||
namespace {
|
||||
|
||||
constexpr const char kCategory[] = "cef.client";
|
||||
@@ -334,9 +330,3 @@ cef_get_current_platform_thread_handle() {
|
||||
return base::PlatformThread::CurrentHandle().platform_handle();
|
||||
#endif
|
||||
}
|
||||
|
||||
void CefEnableHighDPISupport() {
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
base::win::EnableHighDPISupport();
|
||||
#endif
|
||||
}
|
||||
|
Reference in New Issue
Block a user