Bug 1498693 - Revert the other part of 1431803, since mingw-clang can handle it now r=bobowen
authorTom Ritter <tom@mozilla.com>
Fri, 12 Oct 2018 13:44:37 -0500
changeset 489563 4a46dbac24340804b026adcc919c61081673e5be
parent 489562 b705d158c204ff95d5266579de576eaa190988a0
child 489564 c3c3a9571f6306dd0df49e779977f0ee45a37c8e
push id247
push userfmarier@mozilla.com
push dateSat, 27 Oct 2018 01:06:44 +0000
reviewersbobowen
bugs1498693, 1431803
milestone64.0a1
Bug 1498693 - Revert the other part of 1431803, since mingw-clang can handle it now r=bobowen
security/sandbox/chromium-shim/patches/with_update/mingw_disable_one_try.patch
security/sandbox/chromium-shim/patches/with_update/patch_order.txt
security/sandbox/chromium/base/threading/platform_thread_win.cc
deleted file mode 100644
--- a/security/sandbox/chromium-shim/patches/with_update/mingw_disable_one_try.patch
+++ /dev/null
@@ -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;
- };
- 
--- a/security/sandbox/chromium-shim/patches/with_update/patch_order.txt
+++ b/security/sandbox/chromium-shim/patches/with_update/patch_order.txt
@@ -13,11 +13,10 @@ allow_read_only_all_paths_rule.patch
 revert_TargetNtSetInformationThread_change.patch
 mingw_base_win_get_caller.patch
 mingw_duplicate_instatinations.patch
 mingw_msvc_requirement_error.patch
 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
\ No newline at end of file
+mingw_offsetof.patch
--- a/security/sandbox/chromium/base/threading/platform_thread_win.cc
+++ b/security/sandbox/chromium/base/threading/platform_thread_win.cc
@@ -32,30 +32,27 @@ 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;
 };