Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define IsEqualGUID(rguid1, rguid2) \
- (!memcmp(&(rguid1), &(rguid2), sizeof(GUID)))
- static int ctl2_find_guid(....)
- {
- MSFT_GuidEntry *guidentry;
- ...
- if (IsEqualGUID(guidentry, guid)) return offset;
- ...
- }
- Macros are evil! They can hide errors very well. The error is this: guidentry is a pointer.
- This is what should have been written here: if (IsEqualGUID(*guidentry, guid)) return offset;
- This suspicious code was found in ReactOS project by PVS-Studio static code analyzer.
- Warning message is:
- V512 A call of the 'memcmp' function will lead to underflow of the buffer 'guidentry'. oleaut32 typelib2.c 320
- 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
Advertisement