64 lines
1.7 KiB
C++
64 lines
1.7 KiB
C++
|
//==========================================================================
|
||
|
//
|
||
|
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
|
||
|
// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
||
|
// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
|
||
|
// PURPOSE.
|
||
|
//
|
||
|
// Copyright 1998 - 1999 Microsoft Corporation. All Rights Reserved.
|
||
|
//
|
||
|
//--------------------------------------------------------------------------
|
||
|
|
||
|
#include "precomp.h"
|
||
|
|
||
|
|
||
|
//+---------------------------------------------------------------------------
|
||
|
//
|
||
|
// Function: FnAssert, public
|
||
|
//
|
||
|
// Synopsis: Displays the Assert dialog
|
||
|
//
|
||
|
// Arguments: [lpstrExptr] - Expression
|
||
|
// [lpstrMsg] - Msg, if any, to append to the Expression
|
||
|
// [lpstrFilename] - File Assert Occured in
|
||
|
// [iLine] - Line Number of Assert
|
||
|
//
|
||
|
// Returns: Appropriate status code
|
||
|
//
|
||
|
// Modifies:
|
||
|
//
|
||
|
//
|
||
|
//----------------------------------------------------------------------------
|
||
|
|
||
|
#if DBG == 1
|
||
|
|
||
|
STDAPI FnAssert( LPSTR lpstrExpr, LPSTR lpstrMsg, LPSTR lpstrFileName, UINT iLine )
|
||
|
{
|
||
|
int iResult;
|
||
|
char lpTemp[] = "";
|
||
|
char lpBuffer[512];
|
||
|
char lpLocBuffer[256];
|
||
|
|
||
|
|
||
|
if (NULL == lpstrMsg)
|
||
|
lpstrMsg = lpTemp;
|
||
|
|
||
|
wsprintfA(lpBuffer, "Assertion \"%s\" failed! %s", lpstrExpr, lpstrMsg);
|
||
|
wsprintfA(lpLocBuffer, "File %s, line %d; (A=exit; R=break; I=continue)",
|
||
|
lpstrFileName, iLine);
|
||
|
iResult = MessageBoxA(NULL, lpLocBuffer, lpBuffer,
|
||
|
MB_ABORTRETRYIGNORE | MB_SYSTEMMODAL);
|
||
|
|
||
|
if (iResult == IDRETRY)
|
||
|
{
|
||
|
DebugBreak();
|
||
|
}
|
||
|
else if (iResult == IDABORT)
|
||
|
{
|
||
|
FatalAppExitA(0, "Assertion failure");
|
||
|
}
|
||
|
return NOERROR;
|
||
|
}
|
||
|
|
||
|
#endif
|