[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [tor/master] Add !(...) to BUG() log messages
commit 2b39c927c7f2c13f17d9883371a12131b6c6df40
Author: Nick Mathewson <nickm@xxxxxxxxxxxxxx>
Date: Tue Sep 6 20:59:07 2016 -0400
Add !(...) to BUG() log messages
They use the same code as reporting assertion failures, so we should
invert the sense of what we're "asserting".
Fixes bug 20093.
---
changes/bug20093 | 4 ++++
src/common/util_bug.h | 13 ++++++++-----
2 files changed, 12 insertions(+), 5 deletions(-)
diff --git a/changes/bug20093 b/changes/bug20093
new file mode 100644
index 0000000..ef32601
--- /dev/null
+++ b/changes/bug20093
@@ -0,0 +1,4 @@
+ o Minor bugfixes (logging):
+ - When logging a message from the BUG() macro, be explicit about what
+ we were asserting. Previously we were confusing what we were asserting
+ with what the bug was. Fixes bug 20093; bugfix on 0.2.9.1-alpha.
diff --git a/src/common/util_bug.h b/src/common/util_bug.h
index 3f77e0a..8b85d47 100644
--- a/src/common/util_bug.h
+++ b/src/common/util_bug.h
@@ -65,7 +65,8 @@
#define tor_assert_nonfatal_once(cond) tor_assert((cond))
#define BUG(cond) \
(PREDICT_UNLIKELY(cond) ? \
- (tor_assertion_failed_(SHORT_FILE__,__LINE__,__func__,#cond), abort(), 1) \
+ (tor_assertion_failed_(SHORT_FILE__,__LINE__,__func__,"!("#cond")"), \
+ abort(), 1) \
: 0)
#elif defined(TOR_UNIT_TESTS) && defined(DISABLE_ASSERTS_IN_UNIT_TESTS)
#define tor_assert_nonfatal_unreached() STMT_NIL
@@ -98,18 +99,19 @@
STMT_END
#define BUG(cond) \
(PREDICT_UNLIKELY(cond) ? \
- (tor_bug_occurred_(SHORT_FILE__,__LINE__,__func__,#cond,0), 1) \
+ (tor_bug_occurred_(SHORT_FILE__,__LINE__,__func__,"!("#cond")",0), 1) \
: 0)
#endif
#ifdef __GNUC__
#define IF_BUG_ONCE__(cond,var) \
- if (( { \
+ if (( { \
static int var = 0; \
int bool_result = (cond); \
if (PREDICT_UNLIKELY(bool_result) && !var) { \
var = 1; \
- tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, #cond, 1); \
+ tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, \
+ "!("#cond")", 1); \
} \
PREDICT_UNLIKELY(bool_result); } ))
#else
@@ -118,7 +120,8 @@
if (PREDICT_UNLIKELY(cond)) ? \
(var ? 1 : \
(var=1, \
- tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, #cond, 1), \
+ tor_bug_occurred_(SHORT_FILE__, __LINE__, __func__, \
+ "!("#cond")", 1), \
1)) \
: 0)
#endif
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits