Opened 9 years ago

Closed 8 years ago

Last modified 8 months ago

#5430 closed defect (fixed)

AGI: Code analysis warnings

Reported by: Templier Owned by: sev-
Priority: normal Component: Engine: AGI
Keywords: build Cc:
Game:

Description

Here are the warnings I get when compiling the AGI engine using Code Analysis in VS2010.

I tried to remove all the obvious false positives. Some warnings look suspicious, others are pointing to correct code that still might benefit from better error checking.

d:\sources\scummvm\scummvm\engines\agi\preagi_mickey.cpp(311): warning C6011: Dereferencing NULL pointer 'sel'

d:\sources\scummvm\scummvm\engines\agi\preagi_mickey.cpp(1238): warning C6200: Index '9' is out of valid index range '0' to '8' for non-stack buffer 'IDS_MSA_ADDR_PLANET'

d:\sources\scummvm\scummvm\engines\agi\keyboard.cpp(315): warning C6202: Buffer overrun for '_lastSentence', which is possibly stack allocated, in call to 'strcpy': length '256' exceeds buffer size '40'

Note: If you want to try it yourself, you will need:
- the create_project patch set, along with the WIP code analysis patch (http://bitbucket.org/Littleboy/scummvm-jt/src/942f13a9f24b )
- the following patch to silence some false positives ( http://bitbucket.org/Littleboy/scummvm-jt/src/tip/COMMON%20-%20Add%20annotations%20for%20analysis%20build%20configuration.patch )
- Visual Studio 2010 Ultimate or Team System (create_project support for analysis with VS2005/2008 isn't complete yet)

Ticket imported from: #3087825. Ticket imported from: bugs/5430.

Change History (7)

comment:1 Changed 9 years ago by sev-

Owner: set to sev-
Resolution: fixed
Status: newclosed

comment:2 Changed 9 years ago by sev-

Great tool! Fixed.

comment:3 Changed 8 years ago by Templier

Status: closednew

comment:4 Changed 8 years ago by Templier

Here are the results of the last analysis build:

d:\sources\scummvm\scummvm-jt\engines\agi\inv.cpp(69): warning C6336: Arithmetic operator has precedence over question operator, use parentheses to clarify intent
d:\sources\scummvm\scummvm-jt\engines\agi\keyboard.cpp(314): warning C6202: Buffer overrun for '_lastSentence', which is possibly stack allocated, in call to 'strcpy': length '256' exceeds buffer size '40'

The one in keyboard.cpp is the same as before. Let me know if I should treat is as a false positive so I don't report it again in the future.

comment:5 Changed 8 years ago by sev-

Status: newclosed

comment:6 Changed 8 years ago by sev-

Thanks, fixed.

comment:7 Changed 8 months ago by digitall

Component: Engine: AGI
Note: See TracTickets for help on using tickets.