BUG: FormatMessage can return a NULL message. Add check for NULL pointer.

This commit is contained in:
Clinton Stimpson 2008-06-02 19:44:02 -04:00
parent bed3ac8741
commit 0d845b8da8
1 changed files with 6 additions and 1 deletions

View File

@ -305,7 +305,7 @@ const char* DynamicLoader::LibExtension()
//----------------------------------------------------------------------------
const char* DynamicLoader::LastError()
{
LPVOID lpMsgBuf;
LPVOID lpMsgBuf=NULL;
FormatMessage(
FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
@ -317,6 +317,11 @@ const char* DynamicLoader::LastError()
NULL
);
if(!lpMsgBuf)
{
return NULL;
}
static char* str = 0;
delete [] str;
str = strcpy(new char[strlen((char*)lpMsgBuf)+1], (char*)lpMsgBuf);