www.pudn.com > Gimcrack-v0.0051-Source.zip > assert.cpp


#include "assert.h" 
 
#ifdef _DEBUG 
bool _DebugAssert( int expression, char * description, int line, char * file, bool & ignoreAlways ) 
{ 
	if( expression ) 
		return false; 
	 
	char out[512]; 
 
	sprintf(out, "Assert error!\n\nExpression:\t%s\nFile:\t\t%s\nLine:\t\t%d\n", description, file, line); 
 
	switch( MessageBox(NULL, out, "Assert error!", MB_TASKMODAL | MB_ICONHAND | MB_ABORTRETRYIGNORE | MB_SETFOREGROUND) ) 
    { 
		case IDIGNORE:				// Prevent calling again - turn off flag 
			ignoreAlways = true;	// Never call again 
			break; 
		 
		case IDABORT:				// Return flag and break 
			return true;			// Abort! 
    } 
 
	return false; 
} 
 
#endif