mirror of
https://github.com/MariaDB/server.git
synced 2025-01-22 23:04:20 +01:00
4f46b25a02
git-svn-id: file:///svn/toku/tokudb.1032b@7952 c7de825b-a66e-492c-adef-691d508d4ae1
24 lines
670 B
C
24 lines
670 B
C
#include "toku_portability.h"
|
|
#include "toku_assert.h"
|
|
|
|
#include <stdlib.h>
|
|
#include <stdio.h>
|
|
|
|
int toku_continue_on_assert_failure=0;
|
|
|
|
static void toku_assert_failed_but_continue_anyway (void) __attribute__((noinline));
|
|
|
|
static void
|
|
toku_assert_failed_but_continue_anyway (void) {
|
|
printf("Assertion failed, but continuing anyway\n");
|
|
}
|
|
|
|
void toku_do_assert(int expr,const char* expr_as_string,const char *function,const char*file,int line) {
|
|
if (expr==0) {
|
|
fprintf(stderr, "%s:%d %s: Assertion `%s' failed\n", file,line,function,expr_as_string);
|
|
if (!toku_continue_on_assert_failure)
|
|
abort();
|
|
else
|
|
toku_assert_failed_but_continue_anyway();
|
|
}
|
|
}
|