Opened 9 years ago

Closed 8 years ago

Last modified 8 months ago

#5434 closed defect (fixed)

GOB: Code analysis warnings

Reported by: Templier Owned by: DrMcCoy
Priority: normal Component: Engine: Gob
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\gob\draw.cpp(331): warning C6011: Dereferencing NULL pointer 'coord2'
d:\sources\scummvm\scummvm\engines\gob\draw_playtoons.cpp(154): warning C6259: Labeled code is unreachable: '(<expression> & 0xff)' in a switch-expr cannot evaluate to '0xffffffffffffffff'
d:\sources\scummvm\scummvm\engines\gob\game.cpp(360): warning C6202: Buffer overrun for '_curTotFile', which is possibly stack allocated, in call to 'strcpy': length '20' exceeds buffer size '14'
d:\sources\scummvm\scummvm\engines\gob\game.cpp(373): warning C6202: Buffer overrun for '_curTotFile', which is possibly stack allocated, in call to 'strcpy': length '20' exceeds buffer size '14'
d:\sources\scummvm\scummvm\engines\gob\game.cpp(338): warning C6001: Using uninitialized memory '_captureCounter'
d:\sources\scummvm\scummvm\engines\gob\game.cpp(322): warning C6011: Dereferencing NULL pointer '_vm->_inter->_variables'
d:\sources\scummvm\scummvm\engines\gob\sound\adlib.cpp(243): warning C6323: Use of arithmetic operator on Boolean type(s)

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: #3087831. Ticket imported from: bugs/5434.

Change History (9)

comment:1 Changed 9 years ago by DrMcCoy

Fixed. Thanks for reporting :)

I'll leave the comments open, so you can yell if there's more :P

comment:2 Changed 9 years ago by DrMcCoy

Owner: set to DrMcCoy
Resolution: fixed
Status: newclosed

comment:3 Changed 9 years ago by Templier

I'm still getting the _captureCounter one.

You can silence it easily by initializing _captureCounter to 0 at the beginning.

comment:4 Changed 9 years ago by DrMcCoy

Ah, thanks, now it should be fixed. :P

comment:5 Changed 8 years ago by Templier

Here are the results of the latest analysis build:

d:\sources\scummvm\scummvm-jt\engines\gob\save\savefile.cpp(339): warning C4805: '!=' : unsafe mix of type 'byte' and type 'bool' in operation

comment:6 Changed 8 years ago by Templier

Status: closednew

comment:7 Changed 8 years ago by DrMcCoy

Ah, okay, should be fixed in 804f0f3.

comment:8 Changed 8 years ago by DrMcCoy

Status: newclosed

comment:9 Changed 8 months ago by digitall

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