PVS-StudioWarnings

PVS-Studio warning V517 for Chromium

Nov 18th, 2014
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.97 KB | None | 0 0
  1. enum ContentSettingsType;
  2. struct EntryMapKey {
  3.   ContentSettingsType content_type;
  4.   ...
  5. };
  6.  
  7. bool OriginIdentifierValueMap::EntryMapKey::operator<(
  8.     const OriginIdentifierValueMap::EntryMapKey& other) const {
  9.   if (content_type < other.content_type)
  10.     return true;
  11.   else if (other.content_type > content_type)
  12.     return false;
  13.   return (resource_identifier < other.resource_identifier);
  14. }
  15.  
  16. Most likely this is what should be written here: if (content_type > other.content_type) return false.
  17.  
  18. This suspicious code was found in Chromium project by PVS-Studio static code analyzer.
  19. Warning message is:
  20. V517 The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 61, 63. browser content_settings_origin_identifier_value_map.cc 61
  21.  
  22. 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