зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1017132. Don't call printf in FramePointerStackWalk. r=dbaron
This avoids hangs while profiling. --HG-- extra : rebase_source : 1f6dd552ed3f26017107f41283ca667a246765c0
This commit is contained in:
Родитель
90bfe7361a
Коммит
601a3063e8
|
@ -1200,7 +1200,6 @@ FramePointerStackWalk(NS_WalkStackCallback aCallback, uint32_t aSkipFrames,
|
||||||
bp += 2;
|
bp += 2;
|
||||||
#endif
|
#endif
|
||||||
if (IsCriticalAddress(pc)) {
|
if (IsCriticalAddress(pc)) {
|
||||||
printf("Aborting stack trace, PC is critical\n");
|
|
||||||
return NS_ERROR_UNEXPECTED;
|
return NS_ERROR_UNEXPECTED;
|
||||||
}
|
}
|
||||||
if (--skip < 0) {
|
if (--skip < 0) {
|
||||||
|
@ -1277,7 +1276,6 @@ unwind_callback(struct _Unwind_Context* context, void* closure)
|
||||||
void* pc = reinterpret_cast<void*>(_Unwind_GetIP(context));
|
void* pc = reinterpret_cast<void*>(_Unwind_GetIP(context));
|
||||||
// TODO Use something like '_Unwind_GetGR()' to get the stack pointer.
|
// TODO Use something like '_Unwind_GetGR()' to get the stack pointer.
|
||||||
if (IsCriticalAddress(pc)) {
|
if (IsCriticalAddress(pc)) {
|
||||||
printf("Aborting stack trace, PC is critical\n");
|
|
||||||
info->isCriticalAbort = true;
|
info->isCriticalAbort = true;
|
||||||
// We just want to stop the walk, so any error code will do. Using
|
// We just want to stop the walk, so any error code will do. Using
|
||||||
// _URC_NORMAL_STOP would probably be the most accurate, but it is not
|
// _URC_NORMAL_STOP would probably be the most accurate, but it is not
|
||||||
|
|
Загрузка…
Ссылка в новой задаче