mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
ASAN: Disable memory leak detection by default. v7.0.8 (#4154)
By setting the env `ASAN_OPTIONS=halt_on_error=0`, we can ignore memory leaks, see https://github.com/google/sanitizers/wiki/AddressSanitizerFlags By setting env `ASAN_OPTIONS=detect_leaks=0`, we can disable memory leaking detection in parent process when forking for daemon.
This commit is contained in:
parent
8f48a0e2d1
commit
d4248503e7
6 changed files with 19 additions and 28 deletions
|
@ -169,6 +169,22 @@ void asan_report_callback(const char* str)
|
|||
}
|
||||
#endif
|
||||
|
||||
#ifdef SRS_SANITIZER
|
||||
// This function return the default options for asan, before main() is called,
|
||||
// see https://github.com/google/sanitizers/wiki/AddressSanitizerFlags#run-time-flags
|
||||
//
|
||||
// Disable halt on errors by halt_on_error, only print messages, note that it still quit for fatal errors,
|
||||
// see https://github.com/google/sanitizers/wiki/AddressSanitizerFlags
|
||||
//
|
||||
// Disable the memory leaking detect for daemon by detect_leaks,
|
||||
// see https://github.com/google/sanitizers/wiki/SanitizerCommonFlags
|
||||
//
|
||||
// Also disable alloc_dealloc_mismatch for gdb.
|
||||
extern "C" const char *__asan_default_options() {
|
||||
return "halt_on_error=0:detect_leaks=0:alloc_dealloc_mismatch=0";
|
||||
}
|
||||
#endif
|
||||
|
||||
bool srs_is_system_control_error(srs_error_t err)
|
||||
{
|
||||
int error_code = srs_error_code(err);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue