Bug 1498693 - Revert the other part of 1431803, since mingw-clang can handle it now r=bobowen

This commit is contained in:
Tom Ritter 2018-10-12 13:44:37 -05:00
parent ba7241c9d7
commit 8ae788d2db
3 changed files with 1 additions and 56 deletions

View File

@ -1,51 +0,0 @@
# HG changeset patch
# User Tom Ritter <tom@mozilla.com>
# Date 1516389982 21600
# Fri Jan 19 13:26:22 2018 -0600
# Node ID 3ca7306d73ebc1ce47ccdc62ee8cbb69a9bfbb2c
# Parent 6aa6c7d894609140ccde2e9e50eba8c25a9caeb5
Bug 1431803 Disable a specific __try block on MinGW r?bobowen
This function is a technique to name a thread for debugging purposes,
and it always throws an exception (and then continues). On MinGW
we don't want it to throw an exception, so we do nothing.
This means on MinGW we won't get nice thread naming during debugging,
but we'll limp along.
MozReview-Commit-ID: JRKY4wp7sdu
diff --git a/security/sandbox/chromium/base/threading/platform_thread_win.cc b/security/sandbox/chromium/base/threading/platform_thread_win.cc
--- a/security/sandbox/chromium/base/threading/platform_thread_win.cc
+++ b/security/sandbox/chromium/base/threading/platform_thread_win.cc
@@ -32,27 +32,30 @@ typedef struct tagTHREADNAME_INFO {
} THREADNAME_INFO;
// The SetThreadDescription API was brought in version 1607 of Windows 10.
typedef HRESULT(WINAPI* SetThreadDescription)(HANDLE hThread,
PCWSTR lpThreadDescription);
// This function has try handling, so it is separated out of its caller.
void SetNameInternal(PlatformThreadId thread_id, const char* name) {
+ //This function is only used for debugging purposes, as you can find by its caller
+#ifndef __MINGW32__
THREADNAME_INFO info;
info.dwType = 0x1000;
info.szName = name;
info.dwThreadID = thread_id;
info.dwFlags = 0;
__try {
RaiseException(kVCThreadNameException, 0, sizeof(info)/sizeof(DWORD),
reinterpret_cast<DWORD_PTR*>(&info));
} __except(EXCEPTION_CONTINUE_EXECUTION) {
}
+#endif
}
struct ThreadParams {
PlatformThread::Delegate* delegate;
bool joinable;
ThreadPriority priority;
};

View File

@ -18,6 +18,5 @@ mingw_copy_s.patch
mingw_operator_new.patch
mingw_cast_getprocaddress.patch
mingw_capitalization.patch
mingw_disable_one_try.patch
mingw_noexports_casts.patch
mingw_offsetof.patch
mingw_offsetof.patch

View File

@ -37,8 +37,6 @@ typedef HRESULT(WINAPI* SetThreadDescription)(HANDLE hThread,
// This function has try handling, so it is separated out of its caller.
void SetNameInternal(PlatformThreadId thread_id, const char* name) {
//This function is only used for debugging purposes, as you can find by its caller
#ifndef __MINGW32__
THREADNAME_INFO info;
info.dwType = 0x1000;
info.szName = name;
@ -50,7 +48,6 @@ void SetNameInternal(PlatformThreadId thread_id, const char* name) {
reinterpret_cast<DWORD_PTR*>(&info));
} __except(EXCEPTION_CONTINUE_EXECUTION) {
}
#endif
}
struct ThreadParams {