Examples of errors detected by the V600 diagnostic
V600. The 'Foo' pointer is always not equal to NULL. Consider inspecting the condition.
FreeSWITCH
V600 Consider inspecting the condition. The 'name' pointer is always not equal to NULL. fsodbc.cpp 323
JS_ODBC_FUNCTION_IMPL(GetData)
{
....
SQLCHAR name[1024] = ""; // <=
SQLCHAR *data = _colbuf;
SQLLEN pcbValue;
SQLDescribeCol(_stmt, x, name, sizeof(name), ....); // <=
SQLGetData(_stmt, x, SQL_C_CHAR, _colbuf, _cblen, &pcbValue);
if (name) { // <=
if (SQL_NULL_DATA == pcbValue) {
arg->Set(String::NewFromUtf8(GetIsolate(),
(const char *)name), Null(info.GetIsolate()));
} else {
arg->Set(String::NewFromUtf8(GetIsolate(),
(const char *)name), String::NewFromUtf8(GetIsolate(),
data ? (const char *)data : ""));
}
}
....
}
ITK
V600 Consider inspecting the condition. The 'process_id' pointer is always not equal to NULL. itkmultithreaderwinthreads.cxx 90
void MultiThreader::MultipleMethodExecute()
{
....
HANDLE process_id[ITK_MAX_THREADS];
....
process_id[thread_loop] = (void *) _beginthreadex(0, 0, ....);
if ( process_id == 0 )
{
itkExceptionMacro("Error in thread creation !!!");
}
....
}
Most likely this is what should be written here: if ( process_id[thread_loop] == 0 )
Firebird
V600 Consider inspecting the condition. The 'dbb_file->fil_string' pointer is always not equal to NULL. sdw.cpp 961
class jrd_file : public pool_alloc_rpt<SCHAR, type_fil>
{
....
SCHAR fil_string[1];
}
void SDW_start(....)
{
....
if (dbb_file && dbb_file->fil_string &&
expanded_name == dbb_file->fil_string)
....
}
Multi Theft Auto
V600 Consider inspecting the condition. The 'szSerial' pointer is always not equal to NULL. cluafunctiondefs.player.cpp 508
int CLuaFunctionDefs::GetPlayerSerial ( lua_State* luaVM )
{
char szSerial [ 64 ];
g_pCore->GetNetwork()->GetSerial(szSerial, sizeof(szSerial));
if ( szSerial )
{
lua_pushstring ( luaVM, szSerial );
return 1;
}
lua_pushboolean ( luaVM, false );
return 1;
}
OpenSSL
V600 Consider inspecting the condition. The 'dsa_c[i]' pointer is always not equal to NULL. speed.c 1486
int MAIN(int argc, char **argv)
{
....
long dsa_c[DSA_NUM][2];
....
if (dsa_c[i] == 0)
{
dsa_c[i][0]=1;
dsa_c[i][1]=1;
}
....
}
Most likely this is what should be written here: (dsa_c[i][0] == 0).
Similar errors can be found in some other places:
- V600 Consider inspecting the condition. The 'ecdsa_c[i]' pointer is always not equal to NULL. speed.c 1506
- V600 Consider inspecting the condition. The 'ecdsa_c[i]' pointer is always not equal to NULL. speed.c 1523
- V600 Consider inspecting the condition. The 'ecdsa_c[i]' pointer is always not equal to NULL. speed.c 1540
- And 3 additional diagnostic messages.
Notepad++
V600 Consider inspecting the condition. The 'mainVerStr' pointer is always not equal to NULL. Notepad++ nppbigswitch.cpp 938
LRESULT Notepad_plus::process(
HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
{
....
TCHAR mainVerStr[16];
TCHAR auxVerStr[16];
....
if (mainVerStr)
mainVer = generic_atoi(mainVerStr);
if (auxVerStr)
auxVer = generic_atoi(auxVerStr);
....
}
Unnecessary checks.
Similar errors can be found in some other places:
- V600 Consider inspecting the condition. The 'auxVerStr' pointer is always not equal to NULL. Notepad++ nppbigswitch.cpp 940
- V600 Consider inspecting the condition. The 'intStr' pointer is always not equal to NULL. Notepad++ preferencedlg.cpp 1871
- V600 Consider inspecting the condition. The 'intStr' pointer is always not equal to NULL. Notepad++ userdefinedialog.cpp 222
- And 1 additional diagnostic messages.
Notepad++
V600 Consider inspecting the condition. The 'headerM' pointer is always not equal to NULL. notepadPlus printer.cpp 378
size_t Printer::doPrint(bool justDoIt)
{
....
TCHAR headerM[headerSize] = TEXT("");
....
if (headerM != '\0')
{
....
}
Similar errors can be found in some other places:
- V600 Consider inspecting the condition. The 'headerR' pointer is always not equal to NULL. notepadPlus printer.cpp 390