"Port" StackTrace to Mac
Review URL: http://codereview.chromium.org/18173 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8229 0039d316-1c4b-4281-b951-d872f2087c98
Esse commit está contido em:
@@ -18,3 +18,9 @@ bool DebugUtil::WaitForDebugger(int wait_seconds, bool silent) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const void *const *StackTrace::Addresses(size_t* count) {
|
||||
*count = trace_.size();
|
||||
if (trace_.size())
|
||||
return &trace_[0];
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -5,13 +5,9 @@
|
||||
#include "build/build_config.h"
|
||||
#include "base/debug_util.h"
|
||||
|
||||
#if defined(OS_LINUX)
|
||||
#include <unistd.h>
|
||||
#include <execinfo.h>
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <fcntl.h>
|
||||
#include <stdio.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <sys/types.h>
|
||||
@@ -98,10 +94,8 @@ void DebugUtil::BreakDebugger() {
|
||||
asm ("int3");
|
||||
}
|
||||
|
||||
#if defined(OS_LINUX)
|
||||
|
||||
StackTrace::StackTrace() {
|
||||
static const unsigned kMaxCallers = 256;
|
||||
static const int kMaxCallers = 256;
|
||||
|
||||
void* callers[kMaxCallers];
|
||||
int count = backtrace(callers, kMaxCallers);
|
||||
@@ -113,21 +107,3 @@ void StackTrace::PrintBacktrace() {
|
||||
fflush(stderr);
|
||||
backtrace_symbols_fd(&trace_[0], trace_.size(), STDERR_FILENO);
|
||||
}
|
||||
|
||||
#elif defined(OS_MACOSX)
|
||||
|
||||
// TODO(port): complete this code
|
||||
StackTrace::StackTrace() { }
|
||||
|
||||
void StackTrace::PrintBacktrace() {
|
||||
NOTIMPLEMENTED();
|
||||
}
|
||||
|
||||
#endif // defined(OS_MACOSX)
|
||||
|
||||
const void *const *StackTrace::Addresses(size_t* count) {
|
||||
*count = trace_.size();
|
||||
if (trace_.size())
|
||||
return &trace_[0];
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -106,11 +106,6 @@ void DebugUtil::BreakDebugger() {
|
||||
StackTrace::StackTrace() {
|
||||
}
|
||||
|
||||
const void *const *StackTrace::Addresses(size_t* count) {
|
||||
*count = 0;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void PrintBacktrace() {
|
||||
NOTIMPLEMENTED();
|
||||
}
|
||||
|
||||
Referência em uma Nova Issue
Bloquear um usuário