From: Alexey Samsonov Date: Tue, 27 Jan 2015 22:50:19 +0000 (+0000) Subject: [ASan] Fix use-after-scope in COMMON_INTERCEPTOR_ENTER implementation. X-Git-Tag: llvmorg-3.7.0-rc1~13903 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e745728fada85268fae8db15879d63eba1851ceb;p=platform%2Fupstream%2Fllvm.git [ASan] Fix use-after-scope in COMMON_INTERCEPTOR_ENTER implementation. Make sure "void *ctx" doesn't point to an object which already went out of scope. This might also fix -Wuninitialized warnings GCC 4.7 produces while building ASan runtime. llvm-svn: 227258 --- diff --git a/compiler-rt/lib/asan/asan_interceptors.cc b/compiler-rt/lib/asan/asan_interceptors.cc index 2074968..e18790a 100644 --- a/compiler-rt/lib/asan/asan_interceptors.cc +++ b/compiler-rt/lib/asan/asan_interceptors.cc @@ -142,10 +142,10 @@ DECLARE_REAL_AND_INTERCEPTOR(void, free, void *) #define COMMON_INTERCEPTOR_READ_RANGE(ctx, ptr, size) \ ASAN_READ_RANGE(ctx, ptr, size) #define COMMON_INTERCEPTOR_ENTER(ctx, func, ...) \ + ASAN_INTERCEPTOR_ENTER(ctx, func); \ do { \ if (asan_init_is_running) \ return REAL(func)(__VA_ARGS__); \ - ASAN_INTERCEPTOR_ENTER(ctx, func); \ if (SANITIZER_MAC && UNLIKELY(!asan_inited)) \ return REAL(func)(__VA_ARGS__); \ ENSURE_ASAN_INITED(); \