aboutsummaryrefslogtreecommitdiff
path: root/www/firefox/files/patch-bug977457
diff options
context:
space:
mode:
Diffstat (limited to 'www/firefox/files/patch-bug977457')
-rw-r--r--www/firefox/files/patch-bug97745727
1 files changed, 27 insertions, 0 deletions
diff --git a/www/firefox/files/patch-bug977457 b/www/firefox/files/patch-bug977457
new file mode 100644
index 000000000000..cf57b6b1b809
--- /dev/null
+++ b/www/firefox/files/patch-bug977457
@@ -0,0 +1,27 @@
+diff --git xpcom/base/nsStackWalk.cpp xpcom/base/nsStackWalk.cpp
+index bb0e15b..7641267 100644
+--- xpcom/base/nsStackWalk.cpp
++++ xpcom/base/nsStackWalk.cpp
+@@ -23,6 +23,12 @@ struct CriticalAddress {
+ };
+ static CriticalAddress gCriticalAddress;
+
++// for _Unwind_Backtrace from libcxxrt or libunwind
++// cxxabi.h from libcxxrt implicitly includes unwind.h first
++#if defined(HAVE__UNWIND_BACKTRACE) && !defined(_GNU_SOURCE)
++#define _GNU_SOURCE
++#endif
++
+ #if defined(HAVE_DLOPEN) || defined(XP_MACOSX)
+ #include <dlfcn.h>
+ #endif
+@@ -1222,9 +1228,6 @@ NS_StackWalk(NS_WalkStackCallback aCallback, uint32_t aSkipFrames,
+ #elif defined(HAVE__UNWIND_BACKTRACE)
+
+ // libgcc_s.so symbols _Unwind_Backtrace@@GCC_3.3 and _Unwind_GetIP@@GCC_3.0
+-#ifndef _GNU_SOURCE
+-#define _GNU_SOURCE
+-#endif
+ #include <unwind.h>
+
+ struct unwind_info {