mi: More meaningful assert crashes

When we fail an assert in miregion.c (which happens every now and then,
though I haven't yet checked up why), at least generate a segfault, so
we'll get a backtrace.
This commit is contained in:
Daniel Stone 2008-03-14 21:54:13 +02:00
parent 57d48d94b8
commit 88bec0915e

View File

@ -89,9 +89,14 @@ Equipment Corporation.
#undef assert
#ifdef DEBUG
#define assert(expr) {if (!(expr)) \
FatalError("Assertion failed file %s, line %d: expr\n", \
__FILE__, __LINE__); }
#define assert(expr) { \
CARD32 *foo = NULL; \
if (!(expr)) { \
ErrorF("Assertion failed file %s, line %d: %s\n", \
__FILE__, __LINE__, #expr); \
*foo = 0xdeadbeef; /* to get a backtrace */ \
} \
}
#else
#define assert(expr)
#endif