Date: | 08/10/22 18:30:25 |
---|---|
PVS-Studio Version: | 7.19.61166.3606 |
Total Warnings (GA): | 513 |
Group | Projects | Location | Level | Code | Message |
---|---|---|---|---|---|
General Analysis | OpenXcom |
SDL_config_win32.h:45 | Medium | V677 | Custom declaration of a standard 'uintptr_t' type. The system header file should be used: #include <STDDEF.H>. |
General Analysis | OpenXcom |
impl.h:83 | Medium | V547 | Expression is always false. |
General Analysis | OpenXcom |
impl.h:107 | Medium | V547 | Expression is always false. |
General Analysis | OpenXcom |
impl.h:416 | Low | V659 | Declarations of functions with 'Node::operator []' name differ in the 'const' keyword only, but the bodies of these functions have different composition. This is suspicious and can possibly be an error. Check lines: 402, 416. |
General Analysis | OpenXcom |
BaseInfoState.h:27 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
BasescapeState.cpp:164 | Medium | V560 | A part of conditional expression is always true: !exists. |
General Analysis | OpenXcom |
BaseView.cpp:229 | High | V781 | The value of the '_gridY' index is checked after it was used. Perhaps there is a mistake in program logic. |
General Analysis | OpenXcom |
BaseView.cpp:250 | High | V781 | The value of the '_gridY' index is checked after it was used. Perhaps there is a mistake in program logic. |
General Analysis | OpenXcom |
BuildFacilitiesState.cpp:80 | High | V1053 | Calling the 'PopulateBuildList' virtual function in the constructor may lead to unexpected result at runtime. |
General Analysis | OpenXcom |
CraftArmorState.cpp:54 | Low | V525 | The code contains the collection of similar blocks. Check items '17', '9', '9', '9' in lines 54, 55, 56, 57. |
General Analysis | OpenXcom |
CraftEquipmentState.cpp:627 | Medium | V1002 | The 'BattlescapeGenerator' class, containing pointers, constructor and destructor, is copied by the automatically generated copy constructor. |
General Analysis | OpenXcom |
CraftInfoState.h:30 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
MiniBaseView.cpp:102 | Low | V525 | The code contains the collection of similar blocks. Check items '0', 'MINI_SIZE + 2', 'MINI_SIZE + 2' in lines 102, 103, 104. |
General Analysis | OpenXcom |
PlaceLiftState.cpp:42 | Medium | V1077 | The 'PlaceLiftState' constructor contains potentially uninitialized members. Inspect the following: _lift. |
General Analysis | OpenXcom |
ResearchInfoState.cpp:164 | Medium | V773 | The '_project' pointer was not released in destructor. A memory leak is possible. |
General Analysis | OpenXcom |
SelectStartFacilityState.cpp:52 | High | V1053 | Calling the 'populateBuildList' virtual function in the constructor may lead to unexpected result at runtime. |
General Analysis | OpenXcom |
SellState.cpp:628 | Low | V636 | The 'dir * change' expression was implicitly cast from 'int' type to 'double' type. Consider utilizing an explicit type cast to avoid overflow. An example: double A = (double)(X) * Y;. |
General Analysis | OpenXcom |
SoldierDiaryMissionState.cpp:103 | High | V1053 | Calling the 'init' virtual function in the constructor may lead to unexpected result at runtime. |
General Analysis | OpenXcom |
SoldierDiaryMissionState.cpp:48 | Low | V525 | The code contains the collection of similar blocks. Check items '16', '14', '14' in lines 48, 49, 50. |
General Analysis | OpenXcom |
SoldierDiaryOverviewState.cpp:147 | High | V1053 | Calling the 'init' virtual function in the constructor may lead to unexpected result at runtime. |
General Analysis | OpenXcom |
SoldierDiaryPerformanceState.cpp:187 | High | V1053 | Calling the 'init' virtual function in the constructor may lead to unexpected result at runtime. |
General Analysis | OpenXcom |
SoldierDiaryPerformanceState.cpp:71 | Low | V525 | The code contains the collection of similar blocks. Check items '18', '18', '32' in lines 71, 72, 73. |
General Analysis | OpenXcom |
SoldierInfoState.cpp:586 | Medium | V728 | An excessive check can be simplified. The '||' operator is surrounded by opposite expressions '!_soldier->getCraft()' and '_soldier->getCraft()'. |
General Analysis | OpenXcom |
SoldierInfoState.h:28 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
SoldiersState.cpp:60 | Low | V525 | The code contains the collection of similar blocks. Check items '17', '9', '9', '9' in lines 60, 61, 62, 63. |
General Analysis | OpenXcom |
TransferBaseState.cpp:49 | Low | V525 | The code contains the collection of similar blocks. Check items '17', '9', '17', '17' in lines 49, 50, 51, 52. |
General Analysis | OpenXcom |
TransferConfirmState.cpp:49 | Low | V525 | The code contains the collection of similar blocks. Check items '75', '95', '95' in lines 49, 50, 51. |
General Analysis | OpenXcom |
TransferItemsState.cpp:617 | Low | V522 | There might be dereferencing of a potential null pointer 'craft'. |
General Analysis | OpenXcom |
TransferItemsState.cpp:624 | Low | V522 | There might be dereferencing of a potential null pointer 'selItem'. |
General Analysis | OpenXcom |
ActionMenuState.cpp:341 | Low | V669 | The 'dX', 'dY' arguments are non-constant references. The analyzer is unable to determine the position at which this argument is being modified. It is possible that the function contains an error. |
General Analysis | OpenXcom |
AIModule.cpp:478 | Low | V1048 | The 'scout' variable was assigned the same value. |
General Analysis | OpenXcom |
AIModule.cpp:503 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(Position(i, j, 1))'. |
General Analysis | OpenXcom |
AIModule.cpp:657 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(_ambushAction->target)'. |
General Analysis | OpenXcom |
AIModule.cpp:952 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(_escapeAction->target)'. |
General Analysis | OpenXcom |
AIModule.cpp:1162 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(checkPath)'. |
General Analysis | OpenXcom |
AIModule.cpp:1521 | Low | V522 | There might be dereferencing of a potential null pointer 'targetTile'. |
General Analysis | OpenXcom |
AIModule.cpp:1726 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(CurrentPosition)'. |
General Analysis | OpenXcom |
AIModule.cpp:1848 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(action.target)'. |
General Analysis | OpenXcom |
BattlescapeGame.cpp:1381 | Medium | V560 | A part of conditional expression is always true: !_states.empty(). |
General Analysis | OpenXcom |
BattlescapeGame.cpp:1846 | Medium | V560 | A part of conditional expression is always true: !ammoFound. |
General Analysis | OpenXcom |
BattlescapeGame.cpp:555 | Low | V691 | Empirical analysis. It is possible that a typo is present inside the string literal: "STR_WEAPON_UNKNOWN". The 'Weapon' word is suspicious. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:72 | High | V730 | Not all members of a class are initialized inside the constructor. Consider inspecting: _craftPos. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:350 | Medium | V1048 | The 'toContainer' variable was assigned the same value. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:972 | Medium | V560 | A part of conditional expression is always true: _craft. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:1508 | Medium | V560 | A part of conditional expression is always true: !placed. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:1716 | Medium | V560 | A part of conditional expression is always true: pos_x >= 0. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:1717 | Medium | V560 | A part of conditional expression is always true: pos_y >= 0. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:1718 | Medium | V560 | A part of conditional expression is always true: pos_z >= 0. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:1958 | Medium | V799 | The 'data' variable is not used after memory has been allocated for it. Consider checking the use of this variable. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:277 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(pos + Position(x, y, 0))'. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:693 | Low | V522 | There might be dereferencing of a potential null pointer '_base'. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:1603 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(Position(x, y, i))'. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:1638 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(Position(x, y, z))'. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:1680 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:2316 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(Position(i, j, k))'. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:2330 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(Position(x, y, 0))'. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:2377 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:2440 | Low | V522 | There might be dereferencing of a potential null pointer 'tile'. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:2812 | Low | V522 | There might be dereferencing of a potential null pointer 'tile'. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:2860 | Low | V522 | There might be dereferencing of a potential null pointer 'tile'. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:2873 | Low | V522 | There might be dereferencing of a potential null pointer 'tile'. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:2882 | Low | V522 | There might be dereferencing of a potential null pointer 'tile'. |
General Analysis | OpenXcom |
BattlescapeGenerator.cpp:1497 | Low | V796 | It is possible that 'break' statement is missing in switch statement. |
General Analysis | OpenXcom |
BattlescapeState.cpp:1219 | Medium | V1002 | The 'Action' class, containing pointers, constructor and destructor, is copied by the automatically generated copy constructor. |
General Analysis | OpenXcom |
BattlescapeState.cpp:2047 | Medium | V1002 | The 'BattlescapeGenerator' class, containing pointers, constructor and destructor, is copied by the automatically generated copy constructor. |
General Analysis | OpenXcom |
BattlescapeState.cpp:2188 | Medium | V1002 | The 'Action' class, containing pointers, constructor and destructor, is copied by the automatically generated copy constructor. |
General Analysis | OpenXcom |
BattlescapeState.cpp:2214 | Medium | V1002 | The 'Action' class, containing pointers, constructor and destructor, is copied by the automatically generated copy constructor. |
General Analysis | OpenXcom |
BattlescapeState.cpp:1637 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(newPos)'. |
General Analysis | OpenXcom |
BattlescapeState.cpp:1738 | Low | V522 | There might be dereferencing of a potential null pointer 't'. |
General Analysis | OpenXcom |
BattlescapeState.cpp:1843 | Low | V522 | There might be dereferencing of a potential null pointer 'tile'. |
General Analysis | OpenXcom |
BattlescapeState.cpp:1961 | Low | V522 | There might be dereferencing of a potential null pointer 'tile'. |
General Analysis | OpenXcom |
BattlescapeState.h:29 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Camera.cpp:477 | Low | V525 | The code contains the collection of similar blocks. Check items '16', '16', '24' in lines 477, 478, 479. |
General Analysis | OpenXcom |
DebriefingState.cpp:1352 | High | V595 | The 'ruleDeploy' pointer was utilized before it was verified against nullptr. Check lines: 1352, 1372. |
General Analysis | OpenXcom |
DebriefingState.cpp:1209 | Medium | V728 | An excessive check can be simplified. The '||' operator is surrounded by opposite expressions '!aborted' and 'aborted'. |
General Analysis | OpenXcom |
ExplosionBState.cpp:137 | Low | V522 | There might be dereferencing of a potential null pointer 't'. |
General Analysis | OpenXcom |
Inventory.cpp:656 | Low | V522 | There might be dereferencing of a potential null pointer 'item'. |
General Analysis | OpenXcom |
InventoryState.h:28 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Map.cpp:738 | High | V595 | The 'tile->getMapData(O_WESTWALL)' pointer was utilized before it was verified against nullptr. Check lines: 738, 750. |
General Analysis | OpenXcom |
Map.cpp:1089 | High | V595 | The '_numWaypid' pointer was utilized before it was verified against nullptr. Check lines: 1089, 1107. |
General Analysis | OpenXcom |
Map.cpp:1167 | High | V595 | The '_numWaypid' pointer was utilized before it was verified against nullptr. Check lines: 1167, 1174. |
General Analysis | OpenXcom |
Map.cpp:1127 | Medium | V1051 | Consider checking for misprints. It's possible that the 'tileBelow' should be checked here. |
General Analysis | OpenXcom |
Map.cpp:540 | Medium | V547 | Expression '_projectileInFOV' is always true. |
General Analysis | OpenXcom |
Map.cpp:1087 | Low | V522 | There might be dereferencing of a potential null pointer '_numWaypid'. |
General Analysis | OpenXcom |
Map.cpp:1467 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
Map.cpp:1493 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(pos + Position(x, y, 0))'. |
General Analysis | OpenXcom |
Map.cpp:1072 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '2', '2' in lines 1072, 1073, 1074. |
General Analysis | OpenXcom |
Map.h:29 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
MedikitState.cpp:72 | High | V1053 | Calling the 'setHighContrast' virtual function in the constructor may lead to unexpected result at runtime. |
General Analysis | OpenXcom |
MedikitState.cpp:93 | High | V1053 | Calling the 'setColor' virtual function in the constructor may lead to unexpected result at runtime. |
General Analysis | OpenXcom |
MedikitState.cpp:94 | High | V1053 | Calling the 'setHighContrast' virtual function in the constructor may lead to unexpected result at runtime. |
General Analysis | OpenXcom |
MeleeAttackBState.cpp:94 | Medium | V560 | A part of conditional expression is always false: _ammo == 0. |
General Analysis | OpenXcom |
MeleeAttackBState.cpp:95 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
MeleeAttackBState.cpp:141 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
NextTurnState.h:30 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Pathfinding.cpp:500 | High | V547 | Expression 'numberOfPartsChangingHeight == 1' is always false. |
General Analysis | OpenXcom |
Pathfinding.cpp:656 | Medium | V560 | A part of conditional expression is always true: unit != _unit. |
General Analysis | OpenXcom |
Pathfinding.cpp:1120 | Medium | V560 | A part of conditional expression is always true: tuCost != 255. |
General Analysis | OpenXcom |
Pathfinding.cpp:110 | Low | V522 | There might be dereferencing of a potential null pointer 'destinationTile'. |
General Analysis | OpenXcom |
Pathfinding.cpp:144 | Low | V522 | There might be dereferencing of a potential null pointer 'checkTile'. |
General Analysis | OpenXcom |
Pathfinding.cpp:229 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(nextPos)'. |
General Analysis | OpenXcom |
Pathfinding.cpp:386 | Low | V522 | There might be dereferencing of a potential null pointer 'startTile'. |
General Analysis | OpenXcom |
Pathfinding.cpp:489 | Low | V522 | There might be dereferencing of a potential null pointer 'destinationTile'. |
General Analysis | OpenXcom |
Pathfinding.cpp:489 | Low | V522 | There might be dereferencing of a potential null pointer 'startTile'. |
General Analysis | OpenXcom |
Pathfinding.cpp:646 | Low | V522 | There might be dereferencing of a potential null pointer 't'. |
General Analysis | OpenXcom |
Pathfinding.cpp:878 | Low | V522 | There might be dereferencing of a potential null pointer 'startTile'. |
General Analysis | OpenXcom |
Pathfinding.cpp:973 | Low | V522 | There might be dereferencing of a potential null pointer 'tile'. |
General Analysis | OpenXcom |
Pathfinding.cpp:1105 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(nextPoint)'. |
General Analysis | OpenXcom |
PrimeGrenadeState.h:29 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Projectile.cpp:49 | Medium | V1077 | The 'Projectile' constructor contains potentially uninitialized members. Inspect the following: _sprite. |
General Analysis | OpenXcom |
Projectile.cpp:169 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(hitPos)'. |
General Analysis | OpenXcom |
Projectile.cpp:170 | Low | V522 | There might be dereferencing of a potential null pointer 'targetTile'. |
General Analysis | OpenXcom |
Projectile.cpp:224 | Low | V522 | There might be dereferencing of a potential null pointer 'targetTile'. |
General Analysis | OpenXcom |
Projectile.cpp:236 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
Projectile.h:29 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
ProjectileFlyBState.cpp:111 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
ProjectileFlyBState.cpp:218 | Low | V522 | There might be dereferencing of a potential null pointer 'targetTile'. |
General Analysis | OpenXcom |
ProjectileFlyBState.cpp:552 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
ProjectileFlyBState.cpp:735 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
ProjectileFlyBState.cpp:736 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
ProjectileFlyBState.cpp:507 | Low | V525 | The code contains the collection of similar blocks. Check items '16', '16', '24' in lines 507, 508, 509. |
General Analysis | OpenXcom |
PromotionsState.cpp:44 | Low | V525 | The code contains the collection of similar blocks. Check items '17', '9', '9', '9' in lines 44, 45, 46, 47. |
General Analysis | OpenXcom |
PsiAttackBState.cpp:82 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
PsiAttackBState.cpp:133 | Low | V636 | The expression was implicitly cast from 'int' type to 'double' type. Consider utilizing an explicit type cast to avoid overflow. An example: double A = (double)(X) * Y;. |
General Analysis | OpenXcom |
PsiAttackBState.cpp:157 | Low | V656 | Variables 'killStat.weapon', 'killStat.weaponAmmo' are initialized through the call to the same function. It's probably an error or un-optimized code. Consider inspecting the '_action.weapon->getRules()->getName()' expression. Check lines: 156, 157. |
General Analysis | OpenXcom |
ScannerState.h:25 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
TileEngine.cpp:470 | Medium | V547 | Expression 'otherUnit' is always true. |
General Analysis | OpenXcom |
TileEngine.cpp:1271 | Medium | V547 | Expression 'power_ > 0' is always true. |
General Analysis | OpenXcom |
TileEngine.cpp:1213 | Medium | V636 | The 'center.z / 24' expression was implicitly cast from 'int' type to 'double' type. Consider utilizing an explicit type cast to avoid the loss of a fractional part. An example: double A = (double)(X) / Y;. |
General Analysis | OpenXcom |
TileEngine.cpp:1214 | Medium | V636 | The 'center.x / 16' expression was implicitly cast from 'int' type to 'double' type. Consider utilizing an explicit type cast to avoid the loss of a fractional part. An example: double A = (double)(X) / Y;. |
General Analysis | OpenXcom |
TileEngine.cpp:1215 | Medium | V636 | The 'center.y / 16' expression was implicitly cast from 'int' type to 'double' type. Consider utilizing an explicit type cast to avoid the loss of a fractional part. An example: double A = (double)(X) / Y;. |
General Analysis | OpenXcom |
TileEngine.cpp:208 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
TileEngine.cpp:211 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
TileEngine.cpp:214 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
TileEngine.cpp:217 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
TileEngine.cpp:255 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(unit->getPosition())'. |
General Analysis | OpenXcom |
TileEngine.cpp:287 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(test)'. |
General Analysis | OpenXcom |
TileEngine.cpp:327 | Low | V522 | There might be dereferencing of a potential null pointer '_save->getTile(posi)'. |
General Analysis | OpenXcom |
TileEngine.cpp:367 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
TileEngine.cpp:438 | Low | V522 | There might be dereferencing of a potential null pointer 't'. |
General Analysis | OpenXcom |
TileEngine.cpp:1245 | Low | V522 | There might be dereferencing of a potential null pointer 'origin'. |
General Analysis | OpenXcom |
TileEngine.cpp:1276 | Low | V522 | There might be dereferencing of a potential null pointer 'dest'. |
General Analysis | OpenXcom |
TileEngine.cpp:1289 | Low | V522 | There might be dereferencing of a potential null pointer 'tileBelow'. |
General Analysis | OpenXcom |
TileEngine.cpp:2606 | Low | V522 | There might be dereferencing of a potential null pointer 'tempTile'. |
General Analysis | OpenXcom |
TileEngine.cpp:2726 | Low | V522 | There might be dereferencing of a potential null pointer 'rt'. |
General Analysis | OpenXcom |
TileEngine.cpp:2760 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
TileEngine.cpp:372 | Low | V525 | The code contains the collection of similar blocks. Check items '8', '8', '1' in lines 372, 373, 374. |
General Analysis | OpenXcom |
TileEngine.cpp:1213 | Low | V525 | The code contains the collection of similar blocks. Check items '24', '16', '16' in lines 1213, 1214, 1215. |
General Analysis | OpenXcom |
TileEngine.cpp:3190 | Low | V525 | The code contains the collection of similar blocks. Check items '8', '8', '16' in lines 3190, 3191, 3192. |
General Analysis | OpenXcom |
TileEngine.cpp:1662 | Low | V547 | Expression 'direction > 0' is always true. |
General Analysis | OpenXcom |
UnitDieBState.cpp:325 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
UnitFallBState.cpp:92 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
UnitFallBState.cpp:112 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
UnitInfoState.cpp:50 | Medium | V1077 | The 'UnitInfoState' constructor contains potentially uninitialized members. Inspect the following: _btnPrev, _btnNext. |
General Analysis | OpenXcom |
UnitInfoState.h:29 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
UnitSprite.cpp:736 | Low | V1037 | Two or more case-branches perform the same actions. Check lines: 736, 737 |
General Analysis | OpenXcom |
UnitSprite.cpp:738 | Low | V1037 | Two or more case-branches perform the same actions. Check lines: 738, 739 |
General Analysis | OpenXcom |
UnitSprite.cpp:979 | Low | V1037 | Two or more case-branches perform the same actions. Check lines: 979, 980 |
General Analysis | OpenXcom |
UnitSprite.cpp:981 | Low | V1037 | Two or more case-branches perform the same actions. Check lines: 981, 982 |
General Analysis | OpenXcom |
UnitSprite.cpp:1202 | Low | V1037 | Two or more case-branches perform the same actions. Check lines: 1202, 1203 |
General Analysis | OpenXcom |
UnitSprite.cpp:1280 | Low | V1037 | Two or more case-branches perform the same actions. Check lines: 1280, 1281, 1282 |
General Analysis | OpenXcom |
UnitSprite.cpp:1284 | Low | V1037 | Two or more case-branches perform the same actions. Check lines: 1284, 1285, 1286 |
General Analysis | OpenXcom |
UnitWalkBState.cpp:455 | Medium | V560 | A part of conditional expression is always true: !_falling. |
General Analysis | OpenXcom |
UnitWalkBState.cpp:114 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
UnitWalkBState.cpp:136 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
UnitWalkBState.cpp:138 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
UnitWalkBState.cpp:372 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
WarningMessage.cpp:46 | High | V1053 | Calling the 'setVisible' virtual function in the constructor may lead to unexpected result at runtime. |
General Analysis | OpenXcom |
dirent.h:644 | Medium | V1048 | The 'error' variable was assigned the same value. |
General Analysis | OpenXcom |
adlplayer.cpp:728 | Medium | V519 | The 'adl_gv_subtracks_count' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 719, 728. |
General Analysis | OpenXcom |
adlplayer.cpp:217 | Low | V1048 | The 'iNewBlock' variable was assigned the same value. |
General Analysis | OpenXcom |
adlplayer.cpp:230 | Low | V1048 | The 'iNewBlock' variable was assigned the same value. |
General Analysis | OpenXcom |
adlplayer.cpp:316 | Low | V525 | The code contains the collection of similar blocks. Check items 'i', 'v', 'i' in lines 316, 317, 318. |
General Analysis | OpenXcom |
fmopl.cpp:535 | Medium | V1048 | The 'feedback2' variable was assigned the same value. |
General Analysis | OpenXcom |
fmopl.cpp:178 | Low | V1003 | The macro 'SC' is a dangerous expression. The parameter 'db' must be surrounded by parentheses. |
General Analysis | OpenXcom |
fmopl.cpp:456 | Low | V1003 | The macro 'OP_OUT' is a dangerous expression. The parameter 'con' must be surrounded by parentheses. |
General Analysis | OpenXcom |
fmopl.cpp:331 | Low | V1019 | Compound assignment expression 'SLOT->evc += SLOT->evs' is used inside condition. |
General Analysis | OpenXcom |
fmopl.cpp:1232 | Low | V641 | The size of the 'ptr' buffer is not a multiple of the element size of the type 'FM_OPL'. |
General Analysis | OpenXcom |
fmopl.h:15 | Medium | V677 | Custom declaration of a standard 'UINT8' type. The system header file should be used: #include <BaseTsd.h>. |
General Analysis | OpenXcom |
fmopl.h:16 | Medium | V677 | Custom declaration of a standard 'UINT16' type. The system header file should be used: #include <BaseTsd.h>. |
General Analysis | OpenXcom |
fmopl.h:17 | Medium | V677 | Custom declaration of a standard 'UINT32' type. The system header file should be used: #include <BaseTsd.h>. |
General Analysis | OpenXcom |
fmopl.h:18 | Medium | V677 | Custom declaration of a standard 'INT8' type. The system header file should be used: #include <BaseTsd.h>. |
General Analysis | OpenXcom |
fmopl.h:19 | Medium | V677 | Custom declaration of a standard 'INT16' type. The system header file should be used: #include <BaseTsd.h>. |
General Analysis | OpenXcom |
fmopl.h:20 | Medium | V677 | Custom declaration of a standard 'INT32' type. The system header file should be used: #include <BaseTsd.h>. |
General Analysis | OpenXcom |
CatFile.cpp:37 | Medium | V1048 | The '_amount' variable was assigned the same value. |
General Analysis | OpenXcom |
CatFile.cpp:49 | Medium | V1048 | The '_offset[i]' variable was assigned the same value. |
General Analysis | OpenXcom |
CatFile.cpp:51 | Medium | V1048 | The '_size[i]' variable was assigned the same value. |
General Analysis | OpenXcom |
CrossPlatform.cpp:1084 | High | V570 | The 'ctx' variable is assigned to itself. |
General Analysis | OpenXcom |
CrossPlatform.cpp:1135 | High | V595 | The 'exception' pointer was utilized before it was verified against nullptr. Check lines: 1135, 1147. |
General Analysis | OpenXcom |
CrossPlatform.cpp:1084 | Medium | V1001 | The 'ctx' variable is assigned but is not used by the end of the function. |
General Analysis | OpenXcom |
CrossPlatform.cpp:1084 | Medium | V1048 | The 'ctx' variable was assigned the same value. |
General Analysis | OpenXcom |
CrossPlatform.cpp:993 | Medium | V522 | There might be dereferencing of a potential null pointer 'symbol'. Check lines: 993, 992. |
General Analysis | OpenXcom |
CrossPlatform.cpp:996 | Medium | V522 | There might be dereferencing of a potential null pointer 'line'. Check lines: 996, 995. |
General Analysis | OpenXcom |
FastLineClip.cpp:105 | Low | V525 | The code contains the collection of similar blocks. Check items 'Clip1_Left', 'Clip1_Right', 'Clip1_Top', 'Clip1_Left' in lines 105, 106, 107, 108. |
General Analysis | OpenXcom |
FlcPlayer.cpp:914 | Medium | V1051 | Consider checking for misprints. It's possible that the 'currentTick' should be checked here. |
General Analysis | OpenXcom |
FlcPlayer.cpp:485 | Medium | V701 | realloc() possible leak: when realloc() fails in allocating memory, original pointer 'loadingBuff->samples' is lost. Consider assigning realloc() to a temporary pointer. |
General Analysis | OpenXcom |
FlcPlayer.cpp:491 | Low | V522 | There might be dereferencing of a potential null pointer 'loadingBuff->samples'. |
General Analysis | OpenXcom |
FlcPlayer.cpp:82 | Low | V730 | Not all members of a class are initialized inside the constructor. Consider inspecting: _fileSize, _videoFrameData, _chunkData, _audioFrameData, _frameCount, _headerSize, ... |
General Analysis | OpenXcom |
Font.h:31 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Game.cpp:175 | Medium | V1002 | The 'Action' class, containing pointers, constructor and destructor, is copied by the automatically generated copy constructor. |
General Analysis | OpenXcom |
Game.cpp:254 | Medium | V1002 | The 'Action' class, containing pointers, constructor and destructor, is copied by the automatically generated copy constructor. |
General Analysis | OpenXcom |
Game.cpp:191 | Medium | V641 | The size of the '& _event' buffer is not a multiple of the element size of the type 'SDL_ActiveEvent'. |
General Analysis | OpenXcom |
Game.cpp:54 | Medium | V730 | It is possible that not all members of a class are initialized inside the constructor. Consider inspecting: _event. |
General Analysis | OpenXcom |
Game.cpp:263 | Medium | V768 | The variable 'captureMouse' is of enum type. It is odd that it is used as a variable of a Boolean-type. |
General Analysis | OpenXcom |
Game.cpp:586 | Low | V1048 | The 'currentLang' variable was assigned the same value. |
General Analysis | OpenXcom |
Game.cpp:601 | Low | V1048 | The 'currentLang' variable was assigned the same value. |
General Analysis | OpenXcom |
Game.cpp:251 | Low | V796 | It is possible that 'break' statement is missing in switch statement. |
General Analysis | OpenXcom |
GMCat.cpp:252 | Low | V1051 | Consider checking for misprints. It's possible that the 'data2' should be checked here. |
General Analysis | OpenXcom |
GraphSubset.h:32 | Low | V690 | The 'GraphSubset' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
InteractiveSurface.cpp:235 | Medium | V1002 | The 'Action' class, containing pointers, constructor and destructor, is copied by the automatically generated copy constructor. |
General Analysis | OpenXcom |
LanguagePlurality.cpp:106 | Medium | V560 | A part of conditional expression is always true: n % 10 <= 9. |
General Analysis | OpenXcom |
LanguagePlurality.cpp:161 | Medium | V560 | A part of conditional expression is always true: n % 10 <= 9. |
General Analysis | OpenXcom |
LocalizedText.cpp:51 | Low | V659 | Declarations of functions with 'LocalizedText::arg' name differ in the 'const' keyword only, but the bodies of these functions have different composition. This is suspicious and can possibly be an error. Check lines: 30, 51. |
General Analysis | OpenXcom |
LocalizedText.h:30 | High | V1040 | Possible typo in the spelling of a pre-defined macro name. The '__GNUC_' macro is similar to '__GNUC'. |
General Analysis | OpenXcom |
Logger.h:50 | Low | V690 | The copy constructor is declared as private in the 'Logger' class, but the default copy assignment operator will still be generated by compiler. It is dangerous to use such a class. |
General Analysis | OpenXcom |
OpenGL.h:24 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
OptionInfo.cpp:154 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Options.cpp:692 | Low | V783 | Dereferencing of the invalid iterator might take place. |
General Analysis | OpenXcom |
Options.cpp:1172 | Low | V783 | Dereferencing of the invalid iterator '_modInfos.find(id)' might take place. |
General Analysis | OpenXcom |
hq2x.cpp:394 | Medium | V1037 | Two or more case-branches perform the same actions. Check lines: 394, 1864 |
General Analysis | OpenXcom |
hq2x.cpp:404 | Medium | V1037 | Two or more case-branches perform the same actions. Check lines: 404, 1880 |
General Analysis | OpenXcom |
hq2x.cpp:414 | Medium | V1037 | Two or more case-branches perform the same actions. Check lines: 414, 1856 |
General Analysis | OpenXcom |
hq2x.cpp:424 | Medium | V1037 | Two or more case-branches perform the same actions. Check lines: 424, 1872 |
General Analysis | OpenXcom |
hq2x.cpp:74 | Low | V553 | The length of 'hq2x_32_rb' function's body is more than 2000 lines long. You should consider refactoring the code. |
General Analysis | OpenXcom |
hq3x.cpp:502 | Medium | V1037 | Two or more case-branches perform the same actions. Check lines: 502, 2546 |
General Analysis | OpenXcom |
hq3x.cpp:517 | Medium | V1037 | Two or more case-branches perform the same actions. Check lines: 517, 2572 |
General Analysis | OpenXcom |
hq3x.cpp:532 | Medium | V1037 | Two or more case-branches perform the same actions. Check lines: 532, 2533 |
General Analysis | OpenXcom |
hq3x.cpp:547 | Medium | V1037 | Two or more case-branches perform the same actions. Check lines: 547, 2559 |
General Analysis | OpenXcom |
hq3x.cpp:79 | Low | V553 | The length of 'hq3x_32_rb' function's body is more than 2000 lines long. You should consider refactoring the code. |
General Analysis | OpenXcom |
hq4x.cpp:726 | Medium | V1037 | Two or more case-branches perform the same actions. Check lines: 726, 3588 |
General Analysis | OpenXcom |
hq4x.cpp:748 | Medium | V1037 | Two or more case-branches perform the same actions. Check lines: 748, 3628 |
General Analysis | OpenXcom |
hq4x.cpp:770 | Medium | V1037 | Two or more case-branches perform the same actions. Check lines: 770, 3568 |
General Analysis | OpenXcom |
hq4x.cpp:792 | Medium | V1037 | Two or more case-branches perform the same actions. Check lines: 792, 3608 |
General Analysis | OpenXcom |
hq4x.cpp:403 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '6', '6' in lines 403, 404, 405. |
General Analysis | OpenXcom |
hq4x.cpp:484 | Low | V525 | The code contains the collection of similar blocks. Check items '7', '6', '6' in lines 484, 485, 486. |
General Analysis | OpenXcom |
hq4x.cpp:507 | Low | V525 | The code contains the collection of similar blocks. Check items '4', '9', '9' in lines 507, 508, 509. |
General Analysis | OpenXcom |
hq4x.cpp:936 | Low | V525 | The code contains the collection of similar blocks. Check items '4', '3', '3' in lines 936, 937, 938. |
General Analysis | OpenXcom |
hq4x.cpp:945 | Low | V525 | The code contains the collection of similar blocks. Check items '5', '6', '6' in lines 945, 946, 947. |
General Analysis | OpenXcom |
hq4x.cpp:1047 | Low | V525 | The code contains the collection of similar blocks. Check items '4', '9', '9' in lines 1047, 1048, 1049. |
General Analysis | OpenXcom |
hq4x.cpp:1056 | Low | V525 | The code contains the collection of similar blocks. Check items '5', '6', '6' in lines 1056, 1057, 1058. |
General Analysis | OpenXcom |
hq4x.cpp:1078 | Low | V525 | The code contains the collection of similar blocks. Check items '7', '6', '6' in lines 1078, 1079, 1080. |
General Analysis | OpenXcom |
hq4x.cpp:1217 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '6', '6' in lines 1217, 1218, 1219. |
General Analysis | OpenXcom |
hq4x.cpp:1289 | Low | V525 | The code contains the collection of similar blocks. Check items '7', '6', '6' in lines 1289, 1290, 1291. |
General Analysis | OpenXcom |
hq4x.cpp:1309 | Low | V525 | The code contains the collection of similar blocks. Check items '4', '9', '9' in lines 1309, 1310, 1311. |
General Analysis | OpenXcom |
hq4x.cpp:1765 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '6', '6' in lines 1765, 1766, 1767. |
General Analysis | OpenXcom |
hq4x.cpp:1777 | Low | V525 | The code contains the collection of similar blocks. Check items '7', '6', '6' in lines 1777, 1778, 1779. |
General Analysis | OpenXcom |
hq4x.cpp:1817 | Low | V525 | The code contains the collection of similar blocks. Check items '4', '9', '9' in lines 1817, 1818, 1819. |
General Analysis | OpenXcom |
hq4x.cpp:1937 | Low | V525 | The code contains the collection of similar blocks. Check items '7', '6', '6' in lines 1937, 1938, 1939. |
General Analysis | OpenXcom |
hq4x.cpp:1945 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '6', '6' in lines 1945, 1946, 1947. |
General Analysis | OpenXcom |
hq4x.cpp:1957 | Low | V525 | The code contains the collection of similar blocks. Check items '4', '9', '9' in lines 1957, 1958, 1959. |
General Analysis | OpenXcom |
hq4x.cpp:2069 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '2', '2' in lines 2069, 2070, 2071. |
General Analysis | OpenXcom |
hq4x.cpp:2377 | Low | V525 | The code contains the collection of similar blocks. Check items '5', '6', '6' in lines 2377, 2378, 2379. |
General Analysis | OpenXcom |
hq4x.cpp:2488 | Low | V525 | The code contains the collection of similar blocks. Check items '5', '6', '6' in lines 2488, 2489, 2490. |
General Analysis | OpenXcom |
hq4x.cpp:2633 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '2', '2' in lines 2633, 2634, 2635. |
General Analysis | OpenXcom |
hq4x.cpp:2679 | Low | V525 | The code contains the collection of similar blocks. Check items '7', '6', '6' in lines 2679, 2680, 2681. |
General Analysis | OpenXcom |
hq4x.cpp:2766 | Low | V525 | The code contains the collection of similar blocks. Check items '4', '9', '9' in lines 2766, 2767, 2768. |
General Analysis | OpenXcom |
hq4x.cpp:2953 | Low | V525 | The code contains the collection of similar blocks. Check items '4', '9', '9' in lines 2953, 2954, 2955. |
General Analysis | OpenXcom |
hq4x.cpp:2981 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '6', '6' in lines 2981, 2982, 2983. |
General Analysis | OpenXcom |
hq4x.cpp:3013 | Low | V525 | The code contains the collection of similar blocks. Check items '7', '6', '6' in lines 3013, 3014, 3015. |
General Analysis | OpenXcom |
hq4x.cpp:3025 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '2', '2' in lines 3025, 3026, 3027. |
General Analysis | OpenXcom |
hq4x.cpp:4137 | Low | V525 | The code contains the collection of similar blocks. Check items '7', '6', '6' in lines 4137, 4138, 4139. |
General Analysis | OpenXcom |
hq4x.cpp:4264 | Low | V525 | The code contains the collection of similar blocks. Check items '5', '6', '6' in lines 4264, 4265, 4266. |
General Analysis | OpenXcom |
hq4x.cpp:4284 | Low | V525 | The code contains the collection of similar blocks. Check items '5', '6', '6' in lines 4284, 4285, 4286. |
General Analysis | OpenXcom |
hq4x.cpp:4297 | Low | V525 | The code contains the collection of similar blocks. Check items '4', '9', '9' in lines 4297, 4298, 4299. |
General Analysis | OpenXcom |
hq4x.cpp:4573 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '2', '2' in lines 4573, 4574, 4575. |
General Analysis | OpenXcom |
hq4x.cpp:166 | Low | V553 | The length of 'hq4x_32_rb' function's body is more than 2000 lines long. You should consider refactoring the code. |
General Analysis | OpenXcom |
scale3x.cpp:115 | High | V583 | The '?:' operator, regardless of its conditional expression, always returns one and the same value: src1[0]. |
General Analysis | OpenXcom |
scale3x.cpp:152 | High | V583 | The '?:' operator, regardless of its conditional expression, always returns one and the same value: src1[0]. |
General Analysis | OpenXcom |
scale3x.cpp:217 | High | V583 | The '?:' operator, regardless of its conditional expression, always returns one and the same value: src1[0]. |
General Analysis | OpenXcom |
scale3x.cpp:254 | High | V583 | The '?:' operator, regardless of its conditional expression, always returns one and the same value: src1[0]. |
General Analysis | OpenXcom |
scale3x.cpp:319 | High | V583 | The '?:' operator, regardless of its conditional expression, always returns one and the same value: src1[0]. |
General Analysis | OpenXcom |
scale3x.cpp:356 | High | V583 | The '?:' operator, regardless of its conditional expression, always returns one and the same value: src1[0]. |
General Analysis | OpenXcom |
scale3x.cpp:65 | Medium | V560 | A part of conditional expression is always true: src1[0] != src0[0]. |
General Analysis | OpenXcom |
scale3x.cpp:115 | Medium | V560 | A part of conditional expression is always true: src1[0] != src0[0]. |
General Analysis | OpenXcom |
scale3x.cpp:115 | Medium | V560 | A part of conditional expression is always true: src1[0] != src2[0]. |
General Analysis | OpenXcom |
scale3x.cpp:152 | Medium | V560 | A part of conditional expression is always true: src1[0] != src0[0]. |
General Analysis | OpenXcom |
scale3x.cpp:152 | Medium | V560 | A part of conditional expression is always true: src1[0] != src2[0]. |
General Analysis | OpenXcom |
scale3x.cpp:167 | Medium | V560 | A part of conditional expression is always true: src1[0] != src0[0]. |
General Analysis | OpenXcom |
scale3x.cpp:217 | Medium | V560 | A part of conditional expression is always true: src1[0] != src0[0]. |
General Analysis | OpenXcom |
scale3x.cpp:217 | Medium | V560 | A part of conditional expression is always true: src1[0] != src2[0]. |
General Analysis | OpenXcom |
scale3x.cpp:254 | Medium | V560 | A part of conditional expression is always true: src1[0] != src0[0]. |
General Analysis | OpenXcom |
scale3x.cpp:254 | Medium | V560 | A part of conditional expression is always true: src1[0] != src2[0]. |
General Analysis | OpenXcom |
scale3x.cpp:269 | Medium | V560 | A part of conditional expression is always true: src1[0] != src0[0]. |
General Analysis | OpenXcom |
scale3x.cpp:319 | Medium | V560 | A part of conditional expression is always true: src1[0] != src0[0]. |
General Analysis | OpenXcom |
scale3x.cpp:319 | Medium | V560 | A part of conditional expression is always true: src1[0] != src2[0]. |
General Analysis | OpenXcom |
scale3x.cpp:356 | Medium | V560 | A part of conditional expression is always true: src1[0] != src0[0]. |
General Analysis | OpenXcom |
scale3x.cpp:356 | Medium | V560 | A part of conditional expression is always true: src1[0] != src2[0]. |
General Analysis | OpenXcom |
xbrz.cpp:35 | Low | V1003 | The macro 'calcColor' is a dangerous expression. The parameters 'colFront', 'colBack' must be surrounded by parentheses. |
General Analysis | OpenXcom |
xbrz.cpp:428 | Low | V1048 | The 'doLineBlend' variable was assigned the same value. |
General Analysis | OpenXcom |
xbrz.cpp:932 | Low | V525 | The code contains the collection of similar blocks. Check items '2', '3', '4', '5', '4', '5' in lines 932, 933, 934, 935, 937, 938. |
General Analysis | OpenXcom |
xbrz.cpp:952 | Low | V525 | The code contains the collection of similar blocks. Check items '2', '3', '4', '5', '4', '5' in lines 952, 953, 954, 955, 957, 958. |
General Analysis | OpenXcom |
xbrz.cpp:974 | Low | V525 | The code contains the collection of similar blocks. Check items '2', '3', '4', '5', '4', '5' in lines 974, 975, 976, 977, 979, 980. |
General Analysis | OpenXcom |
Screen.cpp:114 | Medium | V1077 | The 'Screen' constructor contains potentially uninitialized members. Inspect the following: _screen. |
General Analysis | OpenXcom |
Screen.cpp:224 | Medium | V547 | Expression '_screen->flags & 0x00000000' is always false. |
General Analysis | OpenXcom |
Screen.cpp:202 | Medium | V560 | A part of conditional expression is always true: _screen->format->BitsPerPixel == 8. |
General Analysis | OpenXcom |
Screen.cpp:202 | Medium | V571 | Recurring check. The '_screen->format->BitsPerPixel == 8' condition was already verified in line 200. |
General Analysis | OpenXcom |
Screen.h:27 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
ShaderDrawHelper.h:60 | Medium | V690 | The 'ShaderBase' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
ShaderMove.h:27 | Low | V690 | The 'ShaderMove' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
SoundSet.cpp:268 | Medium | V547 | Expression 'size' is always true. |
General Analysis | OpenXcom |
SoundSet.cpp:156 | Low | V565 | An empty exception handler. Silent suppression of exceptions can hide the presence of bugs in source code during testing. |
General Analysis | OpenXcom |
SoundSet.cpp:299 | Low | V565 | An empty exception handler. Silent suppression of exceptions can hide the presence of bugs in source code during testing. |
General Analysis | OpenXcom |
State.cpp:534 | Low | V669 | The 'dX', 'dY' arguments are non-constant references. The analyzer is unable to determine the position at which this argument is being modified. It is possible that the function contains an error. |
General Analysis | OpenXcom |
State.h:30 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Surface.cpp:480 | Medium | V547 | Expression '_surface->flags & 0x00000000' is always false. |
General Analysis | OpenXcom |
Surface.h:38 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
SurfaceSet.cpp:220 | Low | V1020 | The function exited without calling the '_frames[frame]->unlock' function. Check lines: 220, 198. |
General Analysis | OpenXcom |
SurfaceSet.cpp:220 | Low | V1020 | The function exited without calling the '_frames[frame]->unlock' function. Check lines: 220, 216. |
General Analysis | OpenXcom |
SurfaceSet.h:27 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
SurfaceSet.h:35 | Low | V690 | The 'SurfaceSet' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Timer.cpp:51 | High | V730 | Not all members of a class are initialized inside the constructor. Consider inspecting: _frameSkipStart. |
General Analysis | OpenXcom |
Timer.cpp:127 | Low | V1051 | Consider checking for misprints. It's possible that the '_frameSkipStart' should be checked here. |
General Analysis | OpenXcom |
Unicode.cpp:81 | Low | V565 | An empty exception handler. Silent suppression of exceptions can hide the presence of bugs in source code during testing. |
General Analysis | OpenXcom |
Zoom.cpp:850 | Medium | V1048 | The 'sax' variable was assigned the same value. |
General Analysis | OpenXcom |
Zoom.cpp:854 | Medium | V1048 | The 'say' variable was assigned the same value. |
General Analysis | OpenXcom |
Zoom.cpp:849 | Medium | V701 | realloc() possible leak: when realloc() fails in allocating memory, original pointer 'sax' is lost. Consider assigning realloc() to a temporary pointer. |
General Analysis | OpenXcom |
Zoom.cpp:853 | Medium | V701 | realloc() possible leak: when realloc() fails in allocating memory, original pointer 'say' is lost. Consider assigning realloc() to a temporary pointer. |
General Analysis | OpenXcom |
BuildNewBaseState.cpp:291 | Medium | V524 | It is odd that the body of 'btnRotateRightRelease' function is fully equivalent to the body of 'btnRotateLeftRelease' function. |
General Analysis | OpenXcom |
BuildNewBaseState.cpp:327 | Medium | V524 | It is odd that the body of 'btnRotateDownRelease' function is fully equivalent to the body of 'btnRotateUpRelease' function. |
General Analysis | OpenXcom |
BuildNewBaseState.cpp:383 | Low | V669 | The 'dX', 'dY' arguments are non-constant references. The analyzer is unable to determine the position at which this argument is being modified. It is possible that the function contains an error. |
General Analysis | OpenXcom |
ConfirmCydoniaState.cpp:91 | Medium | V1002 | The 'BattlescapeGenerator' class, containing pointers, constructor and destructor, is copied by the automatically generated copy constructor. |
General Analysis | OpenXcom |
Cord.h:27 | Low | V690 | The 'CordPolar' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Cord.h:49 | Low | V690 | The 'Cord' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
DogfightState.cpp:1165 | Medium | V1048 | The 'finalRun' variable was assigned the same value. |
General Analysis | OpenXcom |
DogfightState.cpp:235 | Medium | V1077 | The 'DogfightState' constructor contains potentially uninitialized members. Inspect the following: _w1FireInterval, _w2FireInterval. |
General Analysis | OpenXcom |
DogfightState.cpp:738 | Low | V522 | There might be dereferencing of a potential null pointer '_ufo'. |
General Analysis | OpenXcom |
DogfightState.h:32 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
GeoscapeState.cpp:2217 | Medium | V1002 | The 'BattlescapeGenerator' class, containing pointers, constructor and destructor, is copied by the automatically generated copy constructor. |
General Analysis | OpenXcom |
GeoscapeState.cpp:2672 | Medium | V1002 | The 'Action' class, containing pointers, constructor and destructor, is copied by the automatically generated copy constructor. |
General Analysis | OpenXcom |
GeoscapeState.cpp:2364 | Medium | V1051 | Consider checking for misprints. It's possible that the 'targetZone' should be checked here. |
General Analysis | OpenXcom |
GeoscapeState.cpp:1972 | Medium | V524 | It is odd that the body of 'btnRotateRightRelease' function is fully equivalent to the body of 'btnRotateLeftRelease' function. |
General Analysis | OpenXcom |
GeoscapeState.cpp:2008 | Medium | V524 | It is odd that the body of 'btnRotateDownRelease' function is fully equivalent to the body of 'btnRotateUpRelease' function. |
General Analysis | OpenXcom |
GeoscapeState.cpp:1285 | Low | V796 | It is possible that 'break' statement is missing in switch statement. |
General Analysis | OpenXcom |
GeoscapeState.h:26 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Globe.cpp:136 | High | V547 | Expression 'j > 120' is always false. |
General Analysis | OpenXcom |
Globe.cpp:1150 | Low | V1034 | Do not use real type variables as loop counters. |
General Analysis | OpenXcom |
Globe.cpp:1429 | Low | V765 | A compound assignment expression 'length *= length * 15' is suspicious. Consider inspecting it for a possible error. |
General Analysis | OpenXcom |
Globe.h:30 | Medium | V690 | The 'Polygon' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Globe.h:31 | Low | V690 | The 'SurfaceSet' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
GraphsState.cpp:497 | Medium | V522 | There might be dereferencing of a potential null pointer 'button'. |
General Analysis | OpenXcom |
GraphsState.cpp:527 | Medium | V522 | There might be dereferencing of a potential null pointer 'button'. |
General Analysis | OpenXcom |
GraphsState.cpp:551 | Medium | V522 | There might be dereferencing of a potential null pointer 'button'. |
General Analysis | OpenXcom |
GraphsState.cpp:661 | Low | V1026 | The 'total' variable is incremented in the loop. Undefined behavior will occur in case of signed integer overflow. |
General Analysis | OpenXcom |
GraphsState.cpp:672 | Low | V1026 | The 'total' variable is incremented in the loop. Undefined behavior will occur in case of signed integer overflow. |
General Analysis | OpenXcom |
GraphsState.cpp:683 | Low | V1026 | The 'total' variable is incremented in the loop. Undefined behavior will occur in case of signed integer overflow. |
General Analysis | OpenXcom |
GraphsState.cpp:838 | Low | V1026 | The 'total' variable is incremented in the loop. Undefined behavior will occur in case of signed integer overflow. |
General Analysis | OpenXcom |
GraphsState.cpp:853 | Low | V1026 | The 'total' variable is incremented in the loop. Undefined behavior will occur in case of signed integer overflow. |
General Analysis | OpenXcom |
GraphsState.h:25 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
MultipleTargetsState.cpp:78 | Low | V1026 | The 'y' variable is incremented in the loop. Undefined behavior will occur in case of signed integer overflow. |
General Analysis | OpenXcom |
SelectDestinationState.cpp:247 | Medium | V524 | It is odd that the body of 'btnRotateRightRelease' function is fully equivalent to the body of 'btnRotateLeftRelease' function. |
General Analysis | OpenXcom |
SelectDestinationState.cpp:283 | Medium | V524 | It is odd that the body of 'btnRotateDownRelease' function is fully equivalent to the body of 'btnRotateUpRelease' function. |
General Analysis | OpenXcom |
SelectDestinationState.cpp:346 | Low | V669 | The 'dX', 'dY' arguments are non-constant references. The analyzer is unable to determine the position at which this argument is being modified. It is possible that the function contains an error. |
General Analysis | OpenXcom |
ArrowButton.cpp:132 | Low | V525 | The code contains the collection of similar blocks. Check items '5', '8', '3', '3' in lines 132, 133, 134, 135. |
General Analysis | OpenXcom |
ArrowButton.cpp:155 | Low | V525 | The code contains the collection of similar blocks. Check items '5', '3', '3', '3' in lines 155, 156, 157, 158. |
General Analysis | OpenXcom |
ArrowButton.cpp:178 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '5', '9', '1' in lines 178, 179, 180, 181. |
General Analysis | OpenXcom |
ArrowButton.cpp:207 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '2', '9', '1' in lines 207, 208, 209, 210. |
General Analysis | OpenXcom |
ArrowButton.cpp:236 | Low | V525 | The code contains the collection of similar blocks. Check items '2', '4', '2', '1' in lines 236, 237, 238, 239. |
General Analysis | OpenXcom |
ComboBox.cpp:198 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '2', '9', '1' in lines 198, 199, 200, 201. |
General Analysis | OpenXcom |
NumberText.cpp:80 | Low | V525 | The code contains the collection of similar blocks. Check items '0', '0', '0', '1', '2', '3', '2', '2', '4', '4', '4' in lines 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90. |
General Analysis | OpenXcom |
NumberText.cpp:95 | Low | V525 | The code contains the collection of similar blocks. Check items '0', '1', '2', '2', '0', '1', '2', '3', '4' in lines 95, 96, 97, 98, 99, 100, 101, 102, 103. |
General Analysis | OpenXcom |
NumberText.cpp:123 | Low | V525 | The code contains the collection of similar blocks. Check items '0', '0', '0', '1', '2', '2', '2', '3', '3', '4', '4', '4' in lines 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134. |
General Analysis | OpenXcom |
NumberText.cpp:167 | Low | V525 | The code contains the collection of similar blocks. Check items '0', '0', '0', '1', '2', '1', '2', '3', '2', '4', '4', '4' in lines 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178. |
General Analysis | OpenXcom |
Text.cpp:468 | Low | V669 | The 'src' argument is a non-constant reference. The analyzer is unable to determine the position at which this argument is being modified. It is possible that the function contains an error. |
General Analysis | OpenXcom |
TextList.cpp:308 | Medium | V768 | The expression '_align[i]' is of enum type. It is odd that it is used as an expression of a Boolean-type. |
General Analysis | OpenXcom |
TextList.cpp:956 | Low | V1026 | The 'y' variable is incremented in the loop. Undefined behavior will occur in case of signed integer overflow. |
General Analysis | OpenXcom |
TextList.cpp:960 | Low | V1026 | The 'y' variable is incremented in the loop. Undefined behavior will occur in case of signed integer overflow. |
General Analysis | OpenXcom |
TextList.cpp:1001 | Low | V1026 | The 'y' variable is incremented in the loop. Undefined behavior will occur in case of signed integer overflow. |
General Analysis | OpenXcom |
TextList.cpp:1005 | Low | V1026 | The 'y' variable is incremented in the loop. Undefined behavior will occur in case of signed integer overflow. |
General Analysis | OpenXcom |
TextList.cpp:1257 | Low | V524 | It is odd that the body of 'setBorderColor' function is fully equivalent to the body of 'setArrowColor' function. |
General Analysis | OpenXcom |
lodepng.cpp:883 | High | V781 | The value of the 'numcodes' index is checked after it was used. Perhaps there is a mistake in program logic. |
General Analysis | OpenXcom |
lodepng.cpp:1924 | High | V781 | The value of the 'HCLEN' index is checked after it was used. Perhaps there is a mistake in program logic. |
General Analysis | OpenXcom |
lodepng.cpp:640 | Medium | V522 | There might be dereferencing of a potential null pointer 'tree->tree1d'. Check lines: 640, 621. |
General Analysis | OpenXcom |
lodepng.cpp:747 | Medium | V522 | There might be dereferencing of a potential null pointer 'b'. Check lines: 747, 733. |
General Analysis | OpenXcom |
lodepng.cpp:848 | Medium | V522 | There might be dereferencing of a potential null pointer 'lists.freelist'. Check lines: 848, 841. |
General Analysis | OpenXcom |
lodepng.cpp:848 | Medium | V522 | There might be dereferencing of a potential null pointer 'lists.memory'. Check lines: 848, 840. |
General Analysis | OpenXcom |
lodepng.cpp:2607 | Medium | V522 | There might be dereferencing of a potential null pointer 'dest->palette'. |
General Analysis | OpenXcom |
lodepng.cpp:2767 | Medium | V522 | There might be dereferencing of a potential null pointer 'dest->unknown_chunks_data[i]'. |
General Analysis | OpenXcom |
lodepng.cpp:3009 | Medium | V522 | Dereferencing of the null pointer 'tree' might take place. The potential null pointer is passed into 'color_tree_init' function. Inspect the first argument. Check lines: 3009, 3058, 3057. |
General Analysis | OpenXcom |
lodepng.cpp:4232 | Medium | V522 | There might be dereferencing of a potential null pointer 'color->palette'. |
General Analysis | OpenXcom |
lodepng.cpp:5593 | Medium | V522 | There might be dereferencing of a potential null pointer 'adam7'. Check lines: 5593, 5579. |
General Analysis | OpenXcom |
lodepng.cpp:5595 | Medium | V522 | There might be dereferencing of a potential null pointer '* out'. Check lines: 5595, 5576. |
General Analysis | OpenXcom |
lodepng.cpp:5286 | Medium | V547 | Expression '!error' is always true. |
General Analysis | OpenXcom |
lodepng.cpp:1509 | Medium | V560 | A part of conditional expression is always true: usezeros. |
General Analysis | OpenXcom |
lodepng.cpp:1634 | Medium | V560 | A part of conditional expression is always true: usezeros. |
General Analysis | OpenXcom |
lodepng.cpp:3645 | Medium | V560 | A part of conditional expression is always true: bits_done. |
General Analysis | OpenXcom |
lodepng.cpp:3645 | Medium | V560 | A part of conditional expression is always true: numcolors_done. |
General Analysis | OpenXcom |
lodepng.cpp:753 | Medium | V575 | The potential null pointer is passed into 'memcpy' function. Inspect the second argument. Check lines: 753, 733. |
General Analysis | OpenXcom |
lodepng.cpp:1119 | Medium | V612 | An unconditional 'break' within a loop. |
General Analysis | OpenXcom |
lodepng.cpp:1951 | Medium | V612 | An unconditional 'break' within a loop. |
General Analysis | OpenXcom |
lodepng.cpp:4343 | Medium | V612 | An unconditional 'break' within a loop. |
General Analysis | OpenXcom |
lodepng.cpp:4392 | Medium | V612 | An unconditional 'break' within a loop. |
General Analysis | OpenXcom |
lodepng.cpp:4484 | Medium | V612 | An unconditional 'break' within a loop. |
General Analysis | OpenXcom |
lodepng.cpp:5836 | Medium | V612 | An unconditional 'break' within a loop. |
General Analysis | OpenXcom |
lodepng.cpp:886 | Medium | V701 | realloc() possible leak: when realloc() fails in allocating memory, original pointer 'tree->lengths' is lost. Consider assigning realloc() to a temporary pointer. |
General Analysis | OpenXcom |
lodepng.cpp:445 | Low | V1003 | The macro 'READBIT' is a dangerous expression. The parameter 'bitpointer' must be surrounded by parentheses. |
General Analysis | OpenXcom |
lodepng.cpp:2553 | Low | V1037 | Two or more case-branches perform the same actions. Check lines: 2553, 2555, 2556 |
General Analysis | OpenXcom |
lodepng.cpp:2566 | Low | V1037 | Two or more case-branches perform the same actions. Check lines: 2566, 2568 |
General Analysis | OpenXcom |
lodepng.cpp:5927 | Low | V1037 | Two or more case-branches perform the same actions. Check lines: 5927, 5928, 5929 |
General Analysis | OpenXcom |
lodepng.cpp:5931 | Low | V1037 | Two or more case-branches perform the same actions. Check lines: 5931, 5933, 5940 |
General Analysis | OpenXcom |
lodepng.cpp:5966 | Low | V1037 | Two or more case-branches perform the same actions. Check lines: 5966, 5967 |
General Analysis | OpenXcom |
lodepng.cpp:747 | Low | V522 | There might be dereferencing of a potential null pointer 'a'. |
General Analysis | OpenXcom |
lodepng.cpp:747 | Low | V522 | There might be dereferencing of a potential null pointer 'b'. |
General Analysis | OpenXcom |
lodepng.cpp:4730 | Low | V522 | There might be dereferencing of a potential null pointer '* out'. |
General Analysis | OpenXcom |
lodepng.cpp:915 | Low | V525 | The code contains the collection of similar blocks. Check items '8', '9', '7', '8' in lines 915, 916, 917, 918. |
General Analysis | OpenXcom |
lodepng.cpp:2566 | Low | V525 | The code contains the collection of similar blocks. Check items '1', '3', '1', '2', '4' in lines 2566, 2567, 2568, 2569, 2570. |
General Analysis | OpenXcom |
lodepng.cpp:2050 | Low | V547 | Expression 'settings->btype == 2' is always true. |
General Analysis | OpenXcom |
ListGamesState.cpp:92 | Low | V525 | The code contains the collection of similar blocks. Check items '17', '9', '9', '9' in lines 92, 93, 94, 95. |
General Analysis | OpenXcom |
ModListState.cpp:340 | Low | V1026 | The 'targetScrollPos' variable is incremented in the loop. Undefined behavior will occur in case of signed integer overflow. |
General Analysis | OpenXcom |
ModListState.cpp:424 | Low | V1026 | The 'targetScrollPos' variable is incremented in the loop. Undefined behavior will occur in case of signed integer overflow. |
General Analysis | OpenXcom |
NewBattleState.cpp:475 | Medium | V1002 | The 'BattlescapeGenerator' class, containing pointers, constructor and destructor, is copied by the automatically generated copy constructor. |
General Analysis | OpenXcom |
NewBattleState.cpp:525 | Low | V522 | There might be dereferencing of a potential null pointer '_craft'. |
General Analysis | OpenXcom |
SlideshowState.cpp:70 | High | V1051 | Consider checking for misprints. It's possible that the 'transitionSeconds' should be checked here. |
General Analysis | OpenXcom |
SlideshowState.cpp:118 | High | V1051 | Consider checking for misprints. It's possible that the 'transitionSeconds' should be checked here. |
General Analysis | OpenXcom |
TestState.h:26 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
ExtraSprites.h:27 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
ExtraSprites.h:28 | Low | V690 | The 'SurfaceSet' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
MapDataSet.h:30 | Low | V690 | The 'SurfaceSet' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
MapScript.cpp:148 | Low | V537 | Consider reviewing the correctness of '_sizeX' item's usage. |
General Analysis | OpenXcom |
Mod.cpp:3314 | High | V547 | Expression 'j == 3' is always false. |
General Analysis | OpenXcom |
Mod.cpp:1326 | Low | V522 | There might be dereferencing of a potential null pointer 'rule'. |
General Analysis | OpenXcom |
Mod.cpp:2399 | Low | V522 | There might be dereferencing of a potential null pointer 'rule1'. |
General Analysis | OpenXcom |
Mod.cpp:2399 | Low | V522 | There might be dereferencing of a potential null pointer 'rule2'. |
General Analysis | OpenXcom |
Mod.h:33 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Mod.h:34 | Low | V690 | The 'SurfaceSet' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Polygon.h:31 | Medium | V690 | The 'Polygon' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
RuleGlobe.h:27 | Medium | V690 | The 'Polygon' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
RuleInventory.cpp:235 | Low | V783 | Dereferencing of the invalid iterator '_costs.find(slot->getId())' might take place. |
General Analysis | OpenXcom |
RuleItem.h:31 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
RuleItem.h:30 | Low | V690 | The 'SurfaceSet' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
RuleVideo.cpp:26 | Medium | V730 | Not all members of a class are initialized inside the constructor. Consider inspecting: _useUfoAudioSequence, _slideshowHeader. |
General Analysis | OpenXcom |
AlienBase.cpp:60 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
AlienBase.cpp:62 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
AlienStrategy.cpp:149 | Low | V783 | Dereferencing of the invalid iterator 'found' might take place. |
General Analysis | OpenXcom |
Base.cpp:310 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Base.cpp:324 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleItem.cpp:101 | High | V595 | The '_rules' pointer was utilized before it was verified against nullptr. Check lines: 101, 121. |
General Analysis | OpenXcom |
BattleItem.cpp:130 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleItem.cpp:132 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleUnit.cpp:399 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleUnit.cpp:400 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleUnit.cpp:412 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleUnit.cpp:426 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleUnit.cpp:430 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleUnit.cpp:3096 | Low | V1004 | The 'getUnitRules()' pointer was used unsafely after it was verified against nullptr. Check lines: 3081, 3096. |
General Analysis | OpenXcom |
BattleUnit.cpp:1164 | Low | V1048 | The 'bodypart' variable was assigned the same value. |
General Analysis | OpenXcom |
BattleUnit.cpp:1991 | Low | V522 | There might be dereferencing of a potential null pointer 'weaponRightHand'. |
General Analysis | OpenXcom |
BattleUnit.cpp:1992 | Low | V522 | There might be dereferencing of a potential null pointer 'weaponLeftHand'. |
General Analysis | OpenXcom |
BattleUnit.cpp:127 | Low | V525 | The code contains the collection of similar blocks. Check items 'getFrontArmor', 'getSideArmor', 'getSideArmor', 'getRearArmor', 'getUnderArmor' in lines 127, 128, 129, 130, 131. |
General Analysis | OpenXcom |
BattleUnit.cpp:230 | Low | V525 | The code contains the collection of similar blocks. Check items 'getFrontArmor', 'getSideArmor', 'getSideArmor', 'getRearArmor', 'getUnderArmor' in lines 230, 231, 232, 233, 234. |
General Analysis | OpenXcom |
BattleUnit.cpp:129 | Low | V656 | Variables '_maxArmor[SIDE_LEFT]', '_maxArmor[SIDE_RIGHT]' are initialized through the call to the same function. It's probably an error or un-optimized code. Consider inspecting the '_armor->getSideArmor()' expression. Check lines: 128, 129. |
General Analysis | OpenXcom |
BattleUnit.cpp:232 | Low | V656 | Variables '_maxArmor[SIDE_LEFT]', '_maxArmor[SIDE_RIGHT]' are initialized through the call to the same function. It's probably an error or un-optimized code. Consider inspecting the '_armor->getSideArmor()' expression. Check lines: 231, 232. |
General Analysis | OpenXcom |
BattleUnit.h:40 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
BattleUnitStatistics.h:395 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleUnitStatistics.h:405 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleUnitStatistics.h:406 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleUnitStatistics.h:411 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleUnitStatistics.h:412 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
BattleUnitStatistics.h:424 | Medium | V730 | It is possible that not all members of a class are initialized inside the constructor. Consider inspecting: daysWounded, KIA, MIA. |
General Analysis | OpenXcom |
Country.cpp:74 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Country.cpp:78 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Craft.cpp:754 | Medium | V522 | There might be dereferencing of a potential null pointer 'u'. |
General Analysis | OpenXcom |
Craft.cpp:242 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Craft.cpp:244 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Craft.cpp:246 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
CraftWeapon.cpp:66 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
CraftWeaponProjectile.h:22 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
MissionSite.cpp:69 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
MissionSite.cpp:70 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
MissionStatistics.h:87 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
MissionStatistics.h:93 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
MovingTarget.cpp:39 | High | V1053 | Calling the 'setDestination' virtual function in the destructor may lead to unexpected result at runtime. |
General Analysis | OpenXcom |
Node.cpp:103 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Node.cpp:105 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Production.cpp:216 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Production.cpp:218 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
SaveConverter.cpp:805 | Medium | V522 | There might be dereferencing of a potential null pointer 'b'. |
General Analysis | OpenXcom |
SaveConverter.cpp:867 | Medium | V522 | There might be dereferencing of a potential null pointer 'b'. |
General Analysis | OpenXcom |
SaveConverter.cpp:955 | Medium | V522 | There might be dereferencing of a potential null pointer 'b'. |
General Analysis | OpenXcom |
SaveConverter.cpp:1090 | Medium | V522 | There might be dereferencing of a potential null pointer 'b'. |
General Analysis | OpenXcom |
SaveConverter.cpp:942 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
SaveConverter.cpp:999 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
SaveConverter.cpp:1080 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
SaveConverter.h:36 | High | V730 | Not all members of a class are initialized inside the constructor. Consider inspecting: id. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:50 | High | V730 | Not all members of a class are initialized inside the constructor. Consider inspecting: _tiles. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:1604 | Medium | V560 | A part of conditional expression is always true: t. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:461 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:715 | Medium | V614 | Potentially uninitialized iterator 'end' used. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:731 | Medium | V614 | Potentially uninitialized iterator 'begin' used. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:1328 | Medium | V686 | A pattern was detected: (preferred->getFlags() < n->getFlags()) || ((preferred->getFlags() < n->getFlags()) && ...). The expression is excessive or contains a logical error. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:144 | Low | V522 | There might be dereferencing of a potential null pointer 'getTile(pos)'. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:749 | Low | V522 | There might be dereferencing of a potential null pointer 'getTile(pos)'. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:988 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:997 | Low | V522 | There might be dereferencing of a potential null pointer 't'. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:1031 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:1135 | Low | V522 | There might be dereferencing of a potential null pointer 'getTile(unit->getPosition())'. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:1633 | Low | V522 | There might be dereferencing of a potential null pointer. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:1754 | Low | V525 | The code contains the collection of similar blocks. Check items '25', '10', '5', '10' in lines 1754, 1756, 1758, 1760. |
General Analysis | OpenXcom |
SavedBattleGame.cpp:1771 | Low | V525 | The code contains the collection of similar blocks. Check items '25', '20', '10', '20' in lines 1771, 1773, 1775, 1777. |
General Analysis | OpenXcom |
SavedGame.cpp:580 | Medium | V560 | A part of conditional expression is always true: !git_sha.empty(). |
General Analysis | OpenXcom |
SavedGame.cpp:601 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
SavedGame.cpp:618 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Soldier.cpp:175 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
SoldierDiary.cpp:166 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Tile.cpp:178 | Medium | V601 | The 'true' value becomes a class object. |
General Analysis | OpenXcom |
Tile.cpp:182 | Medium | V601 | The 'true' value becomes a class object. |
General Analysis | OpenXcom |
Tile.h:31 | Medium | V690 | The 'Surface' class implements a copy constructor, but lacks the copy assignment operator. It is dangerous to use such a class. |
General Analysis | OpenXcom |
Transfer.cpp:141 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Ufo.cpp:191 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Ufo.cpp:193 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
Ufo.cpp:197 | Medium | V601 | The bool type is implicitly cast to the class type. |
General Analysis | OpenXcom |
ArticleState.cpp:50 | Medium | V773 | The '_btnNext' pointer was not released in destructor. A memory leak is possible. |
General Analysis | OpenXcom |
ArticleStateItem.cpp:39 | Medium | V1077 | The 'ArticleStateItem' constructor contains potentially uninitialized members. Inspect the following: _lstInfo, _txtShotType, _txtAccuracy, _txtTuCost. |
General Analysis | OpenXcom |
ArticleStateTFTDItem.cpp:36 | Medium | V1077 | The 'ArticleStateTFTDItem' constructor contains potentially uninitialized members. Inspect the following: _lstInfo, _txtShotType, _txtAccuracy, _txtTuCost. |