"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:
mark@chromium.org
2009-01-16 22:06:19 +00:00
commit 7230a36ed7
3 arquivos alterados com 8 adições e 31 exclusões
+6
Ver Arquivo
@@ -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;
}
+2 -26
Ver Arquivo
@@ -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;
}
-5
Ver Arquivo
@@ -106,11 +106,6 @@ void DebugUtil::BreakDebugger() {
StackTrace::StackTrace() {
}
const void *const *StackTrace::Addresses(size_t* count) {
*count = 0;
return NULL;
}
void PrintBacktrace() {
NOTIMPLEMENTED();
}