Nathan Froyd
2cc49bb06f
Bug 960700 - delete incorrect comment from nsStackWalk.cpp; r=ehsan
2014-01-16 14:53:04 -05:00
Steven Michaud
c78054cb8b
Bug 956310 - DMD builds fail on Mac OS X. r=bgirard
2014-01-08 17:06:22 -06:00
Isura Edirisinghe
3eedf5ced4
Bug 676907 - Refactor (replace) calls to Gestalt because it is deprecated in OS X 10.8 and will not work in after 10.9. r=BenWa
2013-12-19 11:42:19 -05:00
Birunthan Mohanathas
58325c73be
Bug 713082 - Part 2: Rename Util.h to ArrayUtils.h. r=Waldo
...
--HG--
rename : mfbt/Util.h => mfbt/ArrayUtils.h
2013-12-08 21:52:54 -05:00
Catalin Iacob
a87d623970
Bug 819839 - Part 1 - Allow NS_StackWalk to be called during static initialization on Windows. r=ehsan
2013-11-29 16:08:43 +01:00
Birunthan Mohanathas
c09e07a17c
Bug 784739 - Switch from NULL to nullptr in xpcom/ (1/3); r=ehsan
2013-10-10 16:41:00 -04:00
Nathan Froyd
ab80144a2f
Bug 915765 - fix -Wformat warnings in xpcom/; r=bsmedberg
...
Unfortunately this doesn't fix all platforms, since Android's inttypes.h doesn't
have the right macros for intptr_t at least, but it makes the situation a little
better.
2013-09-12 13:18:36 -04:00
Ehsan Akhgari
a2c0c65e43
Bug 917885 - Minimize the #includes in xpcom/base; r=bsmedberg
2013-09-19 14:29:31 -04:00
Ehsan Akhgari
9b717619cf
Backed out changeset a8d6973e5743 (bug 917885) because I pushed the wrong patch
2013-09-19 14:27:35 -04:00
Ehsan Akhgari
dc575f6de1
Bug 917885 - Minimize the #includes in xpcom/base; r=bsmedberg
2013-09-19 14:12:56 -04:00
Chris Peterson
acb34b3400
Bug 850408 - Part 2: Remove Snow Leopard OS check from nsStackWalk. r=bsmedberg
2013-03-07 22:59:39 +00:00
Ted Mielczarek
ea2791d017
bug 751673 - fix Windows assertion stacks. r=dbaron
...
--HG--
extra : rebase_source : b74882bb3914afaa44341088b9f737c909e88f65
2013-03-11 14:21:53 -04:00
Trevor Saunders
4ec8c73231
bug 829288 - fix a bunch of mingw warnings in xpcom/ r=ehsan
2013-01-10 03:39:40 -05:00
Nicholas Nethercote
16e75efa9f
Bug 818793 - Add a |aMaxFrames| parameter to NS_StackWalk. r=jlebar,glandium; sr=dbaron.
2012-12-20 21:31:57 -08:00
Nicholas Nethercote
bc6e504af4
Bug 717853 - Add a native version of DMD. r=jlebar,glandium.
...
--HG--
extra : rebase_source : 9b824556591abd63b42aa7ff823e9cd25976c162
2012-12-10 16:05:07 -08:00
Bas Schouten
6a7b3d219c
Bug 816117 - Part 1: Add the ability to pass around a windows Thread Context to StackWalkMain64. r=ehsan
2012-12-08 06:15:21 +01:00
Justin Lebar
a8fa9deeee
Bug 819539 - Ignore _Unwind_Backtrace errors on ARM + Android. r=glandium
2012-12-07 17:18:22 -05:00
Ehsan Akhgari
b2aa3c6059
Bug 806209 followup - fix a stupid mistake; irc-r=BenWa
2012-10-29 14:18:14 -04:00
Ehsan Akhgari
c2694e771c
Bug 806209 - Prevent the Windows implementation of NS_StackWalk from accessing the stdio APIs in order to avoid deadlocks when profiling on Windows; r=BenWa
...
--HG--
extra : rebase_source : cb945d9d3cb162a1177029a6aa097af33f7c917b
2012-10-29 14:03:01 -04:00
Mark Hammond
158318bf31
Bug 796526 - stop spewing errors re SysGetModuleInfo64 in debug builds. r=dbaron
2012-10-16 11:26:35 +11:00
Isaac Aggrey
e5d101621c
Bug 795507: Remove usage of PR_BEGIN_EXTERN_C and PR_END_EXTERN_C; r=ehsan
2012-09-30 21:10:22 -05:00
Ehsan Akhgari
70ba385729
Bug 792502 - Kill the FunctionTimer code; r=vlad
2012-09-19 16:59:38 -04:00
Justin Lebar
08d12fafcc
Bug 788546 - In our stack-walking code, instead of asserting that we're initialized and failing if we're not, go ahead and initialize ourself when necessary. r=espindola
2012-09-10 15:51:45 -04:00
Aryeh Gregor
e840991a39
Bug 783523 - Fix platform-specific nsresult misuse; r=ehsan,tbsaunde,smaug
2012-08-16 14:58:11 +03:00
Ehsan Akhgari
8c296bbcd4
Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
...
This patch was generated by a script. Here's the source of the script for
future reference:
function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
! -wholename "*security/nss*" \
! -wholename "*/.hg*" \
! -wholename "obj-ff-dbg*" \
! -name nsXPCOMCID.h \
! -name prtypes.h \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.c" \
-o -iname "*.cc" \
-o -iname "*.idl" \
-o -iname "*.ipdl" \
-o -iname "*.ipdlh" \
-o -iname "*.mm" \) | \
xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}
convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t
convert PRIntn int
convert PRUintn unsigned
convert PRSize size_t
convert PROffset32 int32_t
convert PROffset64 int64_t
convert PRPtrdiff ptrdiff_t
convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Jan Beich
c34ac7f060
Bug 781457 - Define _GNU_SOURCE for _Unwind_Backtrace. r=dbaron
2012-08-10 11:29:59 -04:00
Aryeh Gregor
57c0ad57fb
Bug 777292 part 2 - Change all nsnull to nullptr
2012-07-30 17:20:58 +03:00
Benoit Girard
e0ffcea8b4
Bug 766579 - Part 3: Follow up fix. r=dbaron
2012-07-10 17:39:10 -04:00
Benoit Girard
adc71ae1dd
Bug 766579 - Part 1: Add SP param to NS_StackWalk. r=dbaron
...
--HG--
extra : rebase_source : dd4905ffadf5fe9327449fffdfbc665b05d74a6a
2012-06-27 16:08:21 -04:00
Ehsan Akhgari
8e0eba9784
Bug 767479 - Handle the case of more than 1024 frames when walking the stack of another thread on Windows, and also use the infallible allocator when walking the stack of your own thread; r=dbaron
2012-06-22 16:31:59 -04:00
Ehsan Akhgari
1e3615f111
Bug 767488 - Cache the current process handle after reading it for the first time during stack walking; r=dbaron
...
The current process handle never changes, so it doesn't make a lot of sense
to read it over and over again. Note that this doesn't close the process
handle explicitly but that's fine, since Windows will release all of the
open handles when the application is terminated.
2012-06-22 17:48:31 -04:00
Gervase Markham
87620f5676
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
Jeff Muizelaar
adf7394c63
Bug 719427. Add a comment about malloc_logger. r=espindola
2012-03-27 13:48:58 -04:00
Ehsan Akhgari
3939916769
Bug 737959 - Fix the startup crash with MallocStackLogging; r=bsmedberg
2012-03-22 13:18:36 -04:00
Jeff Muizelaar
06af852226
Bug 732806. Make stackwalking respect the stack end on OS X. r=ehsan
...
This will help us avoid some crashes.
2012-02-15 00:17:34 -05:00
Ehsan Akhgari
8e4c86f1c4
Bug 733264 - Define FramePointerStackWalk on platforms where stackwalking is not supported; r=jrmuizel
2012-03-06 11:38:04 -05:00
Cameron McCormack
24ec15b64b
Bug 732664 - Use FormatMessageA so that XPCOM stack walker prints error message correctly. r=dbaron
2012-03-06 10:04:40 +11:00
Masatoshi Kimura
8cea90b046
Bug 699247 - Remove Win2K related code. r=jimm, sr=neil
2012-02-23 08:53:55 -06:00
Jeff Muizelaar
c818deeaac
Bug 724079. Add an internal stackwalk API. r=ehsan
...
This will be used by the profiler to be able to unwind arbitrary threads.
2012-02-03 15:13:24 -05:00
Ed Morley
ada565efab
Backout f1acc52a59da (bug 719983) & 6771bd53e267 (bug 699247) for 30% WinXp Ts regression
2012-02-08 21:04:21 +00:00
Masatoshi Kimura
09012b6e7c
Bug 699247 - Say goodbye to Win2k related code. r=jimm, sr=neil
2012-02-08 10:00:45 -06:00
Ehsan Akhgari
563cfffc3e
Bug 718032 - Make stackwalking for other threads cheaper on Windows by avoiding involving a third walker thread; r=jrmuizel
2012-01-26 11:57:23 -05:00
Vladan Djeric
4a1e75656f
Bug 716590 - WalkStackMain64 shouldn't skip frames unless it's walking the thread that called NS_StackWalk. r=dbaron
2012-01-23 17:21:23 -05:00
Ehsan Akhgari
c62bdde145
Bug 713278 - Teach NS_StackWalk to walk the stack of other threads too on Windows; r=dbaron
2011-12-23 18:14:09 -05:00
Rafael Ávila de Espíndola
bab81bc7b2
Bug 708031 - refactor the ifdefs in nsStackWalk.cpp. r=dbaron.
...
--HG--
extra : rebase_source : 806f8437d30787c59e0059054c094fee77b5dce3
2011-12-22 11:00:48 -05:00
Javi Rueda
e54fc42266
Bug 379342 - Remove Win95/Win98 support code in XPCom; r=bsmedberg a=removal
2011-12-13 14:17:58 +00:00
Rafael Ávila de Espíndola
eaa3408362
Bug 707648 - Only try to init the critical range if we are able to walk the stack. r=ehsan.
2011-12-06 14:26:49 -05:00
Rafael Ávila de Espíndola
c171f20afb
Bug 696376 - Change how we find critical ranges so that it works on 10.6 too. r=dbaron.
...
Currently we use dlsym on pthread_cond_wait$UNIX2003 to find a
function that indicates that new_sem_from_pool is on the stack. This
works on 10.5, but on 10.6 I could not find a single reliable
indicator that would work with dlsym.
The good news is that dladdr works with any symbol, not just exported
ones. To find the address of new_sem_from_pool, we set up a malloc logger
and force a call to new_sem_from_pool. From the logger callback we walk
the stack trying dladdr on every address.
To force a call to new_sem_from_pool, the initialization code has to be the
first to use semaphores, so it is now run from NS_LogInit.
This works on 10.6 and 10.5 (but we have to look for
"pthread_cond_wait$UNIX2003"). In 10.7 the call to malloc is gone, so we don't
have to worry about critical addresses on it anymore.
--HG--
extra : rebase_source : bba4ac9e3378c88f7037aa884511e473a57121f6
2011-12-02 19:26:04 -05:00
Chris Lord
3ae56ad4cd
Backout bug 696376
...
This broke building on android due to requiring a newer version of unwind.h.
2011-12-02 18:00:58 +00:00
Rafael Ávila de Espíndola
7a8af51b1f
Bug 696376 - Change how we find critical ranges so that it works on 10.6 too. r=dbaron.
...
Currently we use dlsym on pthread_cond_wait$UNIX2003 to find a
function that indicates that new_sem_from_pool is on the stack. This
works on 10.5, but on 10.6 I could not find a single reliable
indicator that would work with dlsym.
The good news is that dladdr works with any symbol, not just exported
ones. To find the address of new_sem_from_pool, we set up a malloc logger
and force a call to new_sem_from_pool. From the logger callback we walk
the stack trying dladdr on every address.
To for a call to new_sem_from_pool, the initialization code has to be the
first to use semaphores, so it is now run from NS_LogInit.
This works on 10.6 and 10.5 (but we have to look for
"pthread_cond_wait$UNIX2003"). In 10.7 the call to malloc is gone, so we don't
have to worry about critical addresses on it anymore.
2011-12-01 18:22:00 -05:00