dfilter: Use wslog with ws_assert_magic()

This commit is contained in:
João Valverde 2021-10-06 11:52:13 +01:00 committed by Wireshark GitLab Utility
parent 8c5a4f9100
commit e4e0b97082
2 changed files with 24 additions and 9 deletions

View File

@ -380,6 +380,20 @@ log_syntax_tree(enum ws_log_level level, stnode_t *root, const char *msg)
wmem_strbuf_destroy(buf);
}
void
ws_assert_magic_full(const char *domain, enum ws_log_level level,
const char *file, int line, const char *func,
const void *ptr, uint32_t magic)
{
const stnode_t *node = (const stnode_t *)ptr;
ws_assert(node);
if (node->magic != magic) {
ws_log_full(domain, level, file, line, func,
"Magic num is 0x%08"PRIx32", but should be 0x%08"PRIx32,
node->magic, magic);
}
}
/*
* Editor modelines - https://www.wireshark.org/tools/modelines.html
*

View File

@ -144,20 +144,21 @@ log_stnode_full(enum ws_log_level level,
log_stnode_full(LOG_LEVEL_NOISY, __FILE__, __LINE__, __func__, node, #node)
#endif
void log_syntax_tree(enum ws_log_level, stnode_t *root, const char *msg);
void
log_syntax_tree(enum ws_log_level, stnode_t *root, const char *msg);
#define _assert_magic(obj, mnum) \
g_assert((obj)); \
if ((obj)->magic != (mnum)) { \
g_print("\nMagic num is 0x%08x, but should be 0x%08x", \
(obj)->magic, (mnum)); \
g_assert((obj)->magic == (mnum)); \
}
void
ws_assert_magic_full(const char *domain, enum ws_log_level level,
const char *file, int line, const char *func,
const void *node, uint32_t magic);
#ifdef WS_DISABLE_DEBUG
#define ws_assert_magic(obj, mnum) (void)0
#else
#define ws_assert_magic(obj, mnum) _assert_magic(obj, mnum)
#define ws_assert_magic(obj, mnum) \
ws_assert_magic_full(LOG_DOMAIN_DFILTER, LOG_LEVEL_CRITICAL, \
__FILE__, __LINE__, __func__, \
obj, mnum)
#endif
#endif /* SYNTAX_TREE_H */