PVS-StudioWarnings

PVS-Studio warning V501 for ReactOS

Nov 13th, 2014
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.95 KB | None | 0 0
  1. HRESULT
  2. SHEOW_LoadOpenWithItems(SHEOWImpl *This, IDataObject *pdtobj)
  3. {
  4.   ...
  5.   if (_ILIsDesktop(pidl) || _ILIsMyDocuments(pidl) ||
  6.       _ILIsControlPanel(pidl) || _ILIsNetHood(pidl) ||
  7.       _ILIsBitBucket(pidl) || _ILIsDrive(pidl) ||
  8.       _ILIsCPanelStruct(pidl) || _ILIsFolder(pidl) ||
  9.       _ILIsControlPanel(pidl))
  10.   {
  11.     TRACE("pidl is a folder\n");
  12.     SHFree((void*)pidl);
  13.     return E_FAIL;
  14.   }
  15.   ...
  16. }
  17.  
  18. You have to strain your eyes, but if you look closely, you will notice that _ILIsControlPanel(pidl) is repeated twice.
  19.  
  20. This suspicious code was found in ReactOS project by PVS-Studio static code analyzer.
  21. Warning message is:
  22. V501 There are identical sub-expressions '_ILIsControlPanel (pidl)' to the left and to the right of the '||' operator. shell32 she_ocmenu.c 1222
  23.  
  24. PVS-Studio is a static analyzer for detecting bugs in the source code of applications written in C, C++, C++11, C++/CX. Site: http://www.viva64.com/en/pvs-studio/
Advertisement
Add Comment
Please, Sign In to add comment