5#include "flutter/fml/backtrace.h"
10#include "flutter/fml/build_config.h"
11#include "flutter/fml/logging.h"
12#include "flutter/fml/paths.h"
13#include "flutter/third_party/abseil-cpp/absl/debugging/symbolize.h"
29 if (!absl::Symbolize(symbol,
name,
sizeof(
name))) {
37 return CaptureStackBackTrace(0,
size,
symbols, NULL);
44 constexpr size_t kMaxFrames = 256;
47 if (available_frames <= 0) {
55 for (
int i =
offset;
i < available_frames; ++
i) {
109 <<
" during program execution." << std::endl
120 if (::signal(signal_name, handler) == SIG_ERR) {
121 FML_LOG(
ERROR) <<
"Could not attach signal handler for " << signal_name;
128 if (!IsDebuggerPresent()) {
129 _CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_FILE | _CRTDBG_MODE_DEBUG);
130 _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);
134 if (exe_path.first) {
135 absl::InitializeSymbolizer(exe_path.second.c_str());
#define FML_LOG(severity)
DEF_SWITCHES_START aot vmservice shared library name
DEF_SWITCHES_START aot vmservice shared library Name of the *so containing AOT compiled Dart assets for launching the service isolate vm snapshot The VM snapshot data that will be memory mapped as read only SnapshotAssetPath must be present isolate snapshot The isolate snapshot data that will be memory mapped as read only SnapshotAssetPath must be present cache dir Path to the cache directory This is different from the persistent_cache_path in embedder which is used for Skia shader cache icu native lib Path to the library file that exports the ICU data vm service The hostname IP address on which the Dart VM Service should be served If not set
std::pair< bool, std::string > GetExecutablePath()
constexpr std::size_t size(T(&array)[N])
static std::string GetSymbolName(void *symbol)
static size_t kKnownSignalHandlers[]
std::string BacktraceHere(size_t offset)
static std::string SignalNameToString(int signal)
bool IsCrashHandlingSupported()
static void ToggleSignalHandlers(bool set)
static int Backtrace(void **symbols, int size)
void InstallCrashHandler()
static void SignalHandler(int signal)
static std::string kKUnknownFrameName
static SkString to_string(int n)