Francois Gouget wrote:
Jacek just sent a patch fixing the following bug:
file = CreateFileW(fileName, GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_READONLY,NULL);
- if(file) {
- if(file != INVALID_HANDLE_VALUE) {
This looks like something that could be turned into a nice Smatch test.
Hint, hint...
You mean something like http://people.redhat.com/mstefani/wine/smatch/scripts/file_handles.pl ? It found following: dlls/wininet/ftp.c 327 FTP_FtpPutFileW(54) Comparision of the file handle 'hFile' with 0. dlls/wininet/ftp.c 1353 FTP_FtpGetFileW(47) Comparision of the file handle 'hFile' with 0. dlls/rpcrt4/rpcss_np_client.c 92 RPCRT4_RpcssNPConnect(58) Comparision of the file handle 'the_pipe' with 0. dlls/dbghelp/msc.c 2311 pdb_fetch_file_info(21) Comparision of the file handle 'hFile' with 0. dlls/dbghelp/pe_module.c 145 pe_load_dbg_file(52) Comparision of the file handle 'hFile' with 0. programs/rpcss/np_server.c 393 RPCSS_NPConnect(57) Comparision of the file handle 'the_pipe' with 0.
Most are false positives (non NULL check before CloseHandle()). 2-3 are fishy at best.
bye michael