mirror of
https://github.com/facebook/rocksdb.git
synced 2024-11-30 13:41:46 +00:00
f9f8965e96
Summary: While debugging Mac-only issue with ThreadLocalPtr, this was very useful. Let's print out stack trace in MAC OS, too. Test Plan: Verified that somewhat useful stack trace was generated on mac. Will run PrintStack() on linux, too. Reviewers: ljin, haobo Reviewed By: haobo CC: leveldb Differential Revision: https://reviews.facebook.net/D18189
35 lines
594 B
C++
35 lines
594 B
C++
// Copyright (c) 2013, Facebook, Inc. All rights reserved.
|
|
// This source code is licensed under the BSD-style license found in the
|
|
// LICENSE file in the root directory of this source tree. An additional grant
|
|
// of patent rights can be found in the PATENTS file in the same directory.
|
|
//
|
|
#include "port/stack_trace.h"
|
|
#include <assert.h>
|
|
|
|
namespace {
|
|
void f0() {
|
|
char *p = nullptr;
|
|
*p = 10; /* SIGSEGV here!! */
|
|
}
|
|
|
|
void f1() {
|
|
f0();
|
|
}
|
|
|
|
void f2() {
|
|
f1();
|
|
}
|
|
|
|
void f3() {
|
|
f2();
|
|
}
|
|
} // namespace
|
|
|
|
int main() {
|
|
rocksdb::port::InstallStackTraceHandler();
|
|
|
|
f3();
|
|
|
|
return 0;
|
|
}
|