Opened 9 years ago

Closed 9 years ago

Last modified 13 months ago

#5447 closed defect (fixed)

SCI: Code analysis warnings

Reported by: Templier Owned by: bluegr
Priority: normal Component: Engine: SCI
Keywords: build Cc:
Game:

Description

Here are the warnings I get when compiling the 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\sci\console.cpp(2126): warning C6011: Dereferencing NULL pointer 'curValue'
d:\sources\scummvm\scummvm\engines\sci\graphics\font.cpp(91): warning C6336: Arithmetic operator has precedence over question operator, use parentheses to clarify intent
d:\sources\scummvm\scummvm\engines\sci\engine\kgraphics.cpp(354): warning C6011: Dereferencing NULL pointer 'dest'
d:\sources\scummvm\scummvm\engines\sci\engine\kpathing.cpp(1333): warning C6011: Dereferencing NULL pointer 'vertex_min'

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)
- 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: #3087872. Ticket imported from: bugs/5447.

Change History (7)

comment:1 by bluegr, 9 years ago

Fixed
The first warning in console.cpp seems to be a false positive

comment:2 by bluegr, 9 years ago

Owner: set to bluegr
Resolution: fixed
Status: newclosed

comment:3 by Templier, 9 years ago

Status: closednew

comment:4 by Templier, 9 years ago

Here are the results of the latest analysis build:

d:\sources\scummvm\scummvm-jt\engines\sci\sound\soundcmd.cpp(141): warning C6011: Dereferencing NULL pointer 'class Sci::SciEngine * Sci::g_sci': Lines: 123, 124, 129, 131, 134, 135, 136, 138, 141
d:\sources\scummvm\scummvm-jt\engines\sci\sound\soundcmd.cpp(627): warning C6011: Dereferencing NULL pointer 'class Sci::SciEngine * Sci::g_sci': Lines: 602, 603, 605, 607, 608, 613, 614, 616, 620, 621, 624, 627
d:\sources\scummvm\scummvm-jt\engines\sci\engine\script.cpp(614): warning C6336: Arithmetic operator has precedence over question operator, use parentheses to clarify intent

(plus the one in console.cpp already identified as a false positive)

comment:5 by wjp, 9 years ago

eb8b1a9 should fix the precedence error.

comment:6 by wjp, 9 years ago

Status: newclosed

comment:7 by digitall, 13 months ago

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