diff options
Diffstat (limited to 'contrib/llvm-project/compiler-rt/lib/asan/asan_suppressions.cpp')
-rw-r--r-- | contrib/llvm-project/compiler-rt/lib/asan/asan_suppressions.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/contrib/llvm-project/compiler-rt/lib/asan/asan_suppressions.cpp b/contrib/llvm-project/compiler-rt/lib/asan/asan_suppressions.cpp index 8cb2c3e3b9b6..e71d23182186 100644 --- a/contrib/llvm-project/compiler-rt/lib/asan/asan_suppressions.cpp +++ b/contrib/llvm-project/compiler-rt/lib/asan/asan_suppressions.cpp @@ -81,9 +81,10 @@ bool IsStackTraceSuppressed(const StackTrace *stack) { } if (suppression_ctx->HasSuppressionType(kInterceptorViaFunction)) { - SymbolizedStack *frames = symbolizer->SymbolizePC(addr); + SymbolizedStackHolder symbolized_stack(symbolizer->SymbolizePC(addr)); + const SymbolizedStack *frames = symbolized_stack.get(); CHECK(frames); - for (SymbolizedStack *cur = frames; cur; cur = cur->next) { + for (const SymbolizedStack *cur = frames; cur; cur = cur->next) { const char *function_name = cur->info.function; if (!function_name) { continue; @@ -91,11 +92,9 @@ bool IsStackTraceSuppressed(const StackTrace *stack) { // Match "interceptor_via_fun" suppressions. if (suppression_ctx->Match(function_name, kInterceptorViaFunction, &s)) { - frames->ClearAll(); return true; } } - frames->ClearAll(); } } return false; |