From: Nick Mathewson Date: Fri, 20 Jul 2018 15:18:11 +0000 (-0400) Subject: Remove over-cleverness from our coverity BUG() definition. X-Git-Tag: tor-0.3.5.1-alpha~178^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c515dc8d0d17b9ce5e8c4f31ba2bd58c15fb90bf;p=thirdparty%2Ftor.git Remove over-cleverness from our coverity BUG() definition. Our previous definition implied that code would never keep running if a BUG occurred (which it does), and that BUG(x) might be true even if x was false (which it can't be). Closes ticket 26890. Bugfix on 0.3.1.4-alpha. --- diff --git a/src/lib/log/util_bug.c b/src/lib/log/util_bug.c index 42b3670a71..b23f4edc97 100644 --- a/src/lib/log/util_bug.c +++ b/src/lib/log/util_bug.c @@ -20,10 +20,6 @@ #include -#ifdef __COVERITY__ -int bug_macro_deadcode_dummy__ = 0; -#endif - #ifdef TOR_UNIT_TESTS static void (*failed_assertion_cb)(void) = NULL; static int n_bugs_to_capture = 0; diff --git a/src/lib/log/util_bug.h b/src/lib/log/util_bug.h index 61ee60f729..2ef5be8d3f 100644 --- a/src/lib/log/util_bug.h +++ b/src/lib/log/util_bug.h @@ -86,13 +86,12 @@ */ #ifdef __COVERITY__ -extern int bug_macro_deadcode_dummy__; #undef BUG // Coverity defines this in global headers; let's override it. This is a // magic coverity-only preprocessor thing. // We use this "deadcode_dummy__" trick to prevent coverity from // complaining about unreachable bug cases. -#nodef BUG(x) ((x)?(__coverity_panic__(),1):(0+bug_macro_deadcode_dummy__)) +#nodef BUG(x) (x) #endif /* defined(__COVERITY__) */ #if defined(__COVERITY__) || defined(__clang_analyzer__)