[Scummvm-git-logs] scummvm master -> 96305a88435d59fcd3e85480f4c1dee428d66ea6

mduggan noreply at scummvm.org
Thu Jun 4 23:27:19 UTC 2026


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .

Summary:
96305a8843 ACCESS: JANITORIAL: Ignore some PVS Studio false-positives


Commit: 96305a88435d59fcd3e85480f4c1dee428d66ea6
    https://github.com/scummvm/scummvm/commit/96305a88435d59fcd3e85480f4c1dee428d66ea6
Author: Matthew Duggan (mgithub at guarana.org)
Date: 2026-06-05T08:44:48+10:00

Commit Message:
ACCESS: JANITORIAL: Ignore some PVS Studio false-positives

Changed paths:
    engines/access/martian/martian_game.cpp
    engines/access/noctropolis/noctropolis_game.cpp
    engines/access/noctropolis/noctropolis_resources.cpp
    engines/access/scripts.cpp


diff --git a/engines/access/martian/martian_game.cpp b/engines/access/martian/martian_game.cpp
index a71bd2d40b0..65c8a81e9a5 100644
--- a/engines/access/martian/martian_game.cpp
+++ b/engines/access/martian/martian_game.cpp
@@ -40,7 +40,8 @@ _creditsStream(nullptr)
 MartianEngine::~MartianEngine() {
 	_skipStart = false;
 	_creditsStream = nullptr;
-}
+	// _video will be deleted in the parent
+} // -V773
 
 void MartianEngine::initObjects() {
 	_inventory = new MartianInventory(this);
diff --git a/engines/access/noctropolis/noctropolis_game.cpp b/engines/access/noctropolis/noctropolis_game.cpp
index 1024d7ccdeb..8e040bad117 100644
--- a/engines/access/noctropolis/noctropolis_game.cpp
+++ b/engines/access/noctropolis/noctropolis_game.cpp
@@ -46,7 +46,7 @@ _stilFlag2(_flags[234])
 NoctropolisEngine::~NoctropolisEngine() {
 	delete _invScript;
 	// _midi will be deleted in parent.
-}
+} //-V773
 
 void NoctropolisEngine::initObjects() {
 	_room = new NoctropolisRoom(this);
diff --git a/engines/access/noctropolis/noctropolis_resources.cpp b/engines/access/noctropolis/noctropolis_resources.cpp
index f07c94b4a56..43739415fd3 100644
--- a/engines/access/noctropolis/noctropolis_resources.cpp
+++ b/engines/access/noctropolis/noctropolis_resources.cpp
@@ -1820,14 +1820,14 @@ static constexpr const char *INVNAMES[4][76] = {
 {" ", "      MORE ITEMS", "      MORE ITEMS", "      FENCE SPIRE", "     SILVER TOKEN", "      GOLD TOKEN", "       NOTICES", "     TICKET STUB", "    DIVORCE PAPERS", "       POSTCARD", "    BANK STATEMENT", "    LOTTERY LETTER", "       NEWSPAPER", "     BUTTER KNIFE", "         WIRE", "       DETONATOR", "PLASTIC EXPLOSIVE STATUE", "        CHALICE", "       COFFIN KEY", "         BILLS", "     SCRAP OF LACE", "         NOTE", "         DIARY", "   LIQUIDARK GRENADE", "       NEWSPAPERS", "   DARKSHEER HISTORY", "      GLASS CUTTER", "     SHARD OF GLASS", "       CLIPBOARD", "     ELEVATOR PASS", "         CLOCK", "  QUICKGROW SOLUTION", "         BONE", "     SACK OF SEEDS", "    THROWING KNIVES", "      MAGIC WAND", "      SCREWDRIVER", "       LOG BOOK", "        OIL CAN", "          LENS", "       MAKEUP KIT", "        JEWELRY", "        HAMMER", "        CHISEL", "    BUTCHER KNIFE", "      MEAT HOOK", "        BEAKER", "         ACID", "     VALVE WHEEL", "         ROPE", "        RE-BAR", "         NET", "         RAT", "         FORK", "         MATCH", "         PAINT", "      PAINT BRUSH", "        PEPPER", "      DENTAL PICK", "         SPEAR", "       EGG SACK", "       DIAMOND", "        COMIC", "          WEB", "   WROUGHT IRON SHAFT", "   CHALICE WITH WATER", "      BROKEN CHAIR", "       SAUSAGE", "        POSTER", "        BRICK", "      NOCTROGLYPH", "       DUCT TAPE", "         BROOM", "        OIL LAMP", "     BROOM AND HOOK", "    ROPE AND SAUSAGE"},
 {" ", "      AUTRES OBJETS", "      AUTRES OBJETS", "      MONTANT DE GRILLE", "     PIECE D'ARGENT", "      PIECE D'OR", "       AVERTISSEMENTS", "     SOUCHE DE TICKET", "    PAPIERS DE DIVORCE", "    CARTE POSTALE", "    RELEVE BANCAIRE", "    LETTRE DU CONCOURS", "       JOURNAL", "     COUTEAU A BEURRE", "         CABLE", "       DETONATEUR", "STATUETTE EXPLOSIVE", "        CALICE", "   CLEF DE CERCUEIL", "      FACTURES", " MORCEAU DE DENTELLE", "       MESSAGE", "      JOURNAL", "  GRENADE DE LIQUIDARK", "       JOURNAL", " HISTOIRE DE DARKSHEER", "      DIAMANT A VITRES", "     ECLAT DE VERRE", "       BLOC-NOTES", "  CARTE MAGNETIQUE", "         REVEIL", "  ENGRAIS MIRACLE", "         MACHOIRE", "     SAC DE GRAINES", "    COUTEAUX", "  BAGUETTE MAGIQUE", "     TOURNEVIS", "     JOURNAL", "       HUILE", "       LENTILLE", " TROUSSE DE MAQUILLAGE", "      BIJOUX", "      MARTEAU", "       BURIN", "   COUTEAU DE BOUCHER", "     CROCHET A VIANDE", "        FIOLE", "         ACIDE", "     VANNE", "         CORDE", "      FER A BETON", "        FILET", "         RAT", "      FOURCHETTE", "      ALLUMETTE", "         PEINTURE", "      PINCEAU", "        POIVRE", "      CURE-DENTS", "        LANCE", "       OEUFS", "       DIAMANT", "   BANDE DESSINEE", "        TOILE", "   TIGE D'ACIER ROUILLEE", "   CALICE PLEIN D'EAU", "      CHAISE CASSEE", "       SAUCISSE", "       AFFICHE", "        BRIQUE", "      NOCTROGLYPHE", "       TEFLON", "         BALAI", "      LAMPE A HUILE", "     BALAI ET CROCHET", "    CORDE ET SAUCISSE"},
 {" ", "      MAS OBJETOS", "      MAS OBJETOS", "  HIERRO DE VERJA", "  MONEDA PLATEADA", "   MONEDA DORADA", "         NOTAS", "     COMPROBANTE", " DEMANDA DE DIVORCIO", "         POSTAL", "   CARTA DEL BANCO", " CARTA DE LA LOTERIA", "      PERIODICO", " CUCHILLO MANTEQUILLA", "      ALAMBRE", "       DETONADOR", "ESTATUA EXPLOSIVA", "        CALIZ", "   LLAVE DE ATAUD", "      FACTURAS", "  TIRA DE ENCAJE", "         NOTA", "         DIARIO", "  GRANADA DE LIQUIOSCURO", "      PERIODICOS", "  TRATADO DE TINIEBLAS", "  CORTADOR DE CRISTAL", "   PEDAZO DE CRISTAL", "     PORTAPAPELES", "  PASE DE ELEVADOR", "         RELOJ", " SOLUCION DE CRECIMIENTO", "        HUESO", "        SEMILLAS", " CUCHILLOS ARROJADIZOS", "     VARA MAGICA", "    DESTORNILLADOR", "       REGISTRO", "  LATA DE ACEITE", "         LENTE", "      MAQUILLAJE", "          JOYAS", "      MARTILLO", "        CINCEL", " CUCHILLO DE CARNE", "  GANCHO DE CARNE", "         JARRA", "        ACIDO", " RUEDA DE VALVULA", "         SOGA", "      PALANCA", "         RED", "        RATA", "      TENEDOR", "       CERILLA", "      PINTURA", "        BROCHA", "      PIMIENTA", "     PICO DENTAL", "         LANZA", "  SACO DE HUEVOS", "       DIAMANTE", "        COMIC", "         TELA", "   ASTA DE HIERRO", "   CALIZ CON AGUA", "     SILLA ROTA", "    SALCHICHA", "        CARTEL", "     LADRILLO", "      NOCTROGLIFO", " CINTA ADHESIVA", "        ESCOBA", " LAMPARA DE ACEITE", "  ESCOBA CON GANCHO", "  SOGA CON SALCHICHA"},
-{" ", "  WEITERE GEGENST\x8E""NDE", "  WEITERE GEGENST\x8E""NDE", "      ZAUNSTREBE", "   SILBERNES SYMBOL", "   GOLDENES SYMBOL", "       MAHNUNGEN", "     LOSABSCHNITT", "  SCHEIDUNGSPAPIERE", "      POSTKARTE", "     KONTOAUSZUG", "   WETTBEWERBSBRIEF", "       ZEITUNG", "    BUTTERMESSER", "        KABEL", "       Z\x9A""NDER", "STATUE AUS PLASTIKSPRENGSTOFF", "       KELCH", "   SARGSCHL\x9A""SSEL", "     RECHNUNGEN", "       SPITZE", "       ZETTEL", "      TAGEBUCH", "   DUSTER\x99""L-GRANATE", "      ZEITUNG", "DIE GESCHICHTE VON DARKSHEER", "   GLASSCHNEIDER", "      SCHERBE", "     KLEMMBRETT", "     MAGNETKARTE", "       WECKER", "  WUCHSBESCHLEUNIGER", "       KNOCHEN", "     SAMENBEUTEL", "      WURFMESSER", "      ZAUBERSTAB", "   SCHRAUBENDREHER", "       LOGBUCH", "      \x99""LK\x8E""NNCHEN", "        LINSE", "     SCHMINKSET", "        SCHMUCK", "        HAMMER", "        MEISSEL", "        MESSER", "    FLEISCHERHAKEN", "       MESSBECHER", "        S\x8E""URE", "    VENTILSTELLRAD", "         SEIL", "     MONIEREISEN", "         NETZ", "        RATTE", "        GABEL", "     STREICHHOLZ", "         LACK", "        PINSEL", "        PFEFFER", "      ZAHNSTOCHER", "         SPEER", "       EIERSACK", "        DIAMANT", "        COMIC", "         NETZ", "  SCHMIEDEEISERNE STANGE", "    KELCH MIT WASSER", "      STUHLTR\x9A""MMER", "       W\x9A""RSTCHEN", "        PLAKAT", "        ZIEGEL", "      NOCTROGLYPH", "      ISOLIERBAND", "         BESEN", "        \x99""LLAMPE", "     STIEL MIT HAKEN", "    SEIL MIT W\x9A""RSTCHEN"},
+{" ", "  WEITERE GEGENST\x8E""NDE", "  WEITERE GEGENST\x8E""NDE", "      ZAUNSTREBE", "   SILBERNES SYMBOL", "   GOLDENES SYMBOL", "       MAHNUNGEN", "     LOSABSCHNITT", "  SCHEIDUNGSPAPIERE", "      POSTKARTE", "     KONTOAUSZUG", "   WETTBEWERBSBRIEF", "       ZEITUNG", "    BUTTERMESSER", "        KABEL", "       Z\x9A""NDER", "STATUE AUS PLASTIKSPRENGSTOFF", "       KELCH", "   SARGSCHL\x9A""SSEL", "     RECHNUNGEN", "       SPITZE", "       ZETTEL", "      TAGEBUCH", "   DUSTER\x99""L-GRANATE", "      ZEITUNG", "DIE GESCHICHTE VON DARKSHEER", "   GLASSCHNEIDER", "      SCHERBE", "     KLEMMBRETT", "     MAGNETKARTE", "       WECKER", "  WUCHSBESCHLEUNIGER", "       KNOCHEN", "     SAMENBEUTEL", "      WURFMESSER", "      ZAUBERSTAB", "   SCHRAUBENDREHER", "       LOGBUCH", "      \x99""LK\x8E""NNCHEN", "        LINSE", "     SCHMINKSET", "        SCHMUCK", "        HAMMER", "        MEISSEL", "        MESSER", "    FLEISCHERHAKEN", "       MESSBECHER", "        S\x8E""URE", "    VENTILSTELLRAD", "         SEIL", "     MONIEREISEN", "         NETZ", "        RATTE", "        GABEL", "     STREICHHOLZ", "         LACK", "        PINSEL", "        PFEFFER", "      ZAHNSTOCHER", "         SPEER", "       EIERSACK", "        DIAMANT", "        COMIC", "         NETZ", "  SCHMIEDEEISERNE STANGE", "    KELCH MIT WASSER", "      STUHLTR\x9A""MMER", "       W\x9A""RSTCHEN", "        PLAKAT", "        ZIEGEL", "      NOCTROGLYPH", "      ISOLIERBAND", "         BESEN", "        \x99""LLAMPE", "     STIEL MIT HAKEN", "    SEIL MIT W\x9A""RSTCHEN"}, //-V653
 };
 
 static constexpr const char *ASKITEMS[4][33] = {
 {"      NOCTROPOLIS", "       DARKSHEER", "       STILETTO", "    FATHER DESMOND", "       SUCCUBUS", "        CYGNUS", "      SAM JENKINS", "       MS. SHOTO", "      GREENTHUMB", "        TOPHAT", "        BUTCHER", "    MASTER MACABRE", "       DREALMER", "         FLUX", "    SUNSPIRE TOWER", "      LIQUIDARK", "      SHADESKIN", "      SHADOWLAIR", "     OBSERVATORY", "      CATHEDRAL", "     BEN HUTCHINS", "      MAUSOLEUM", "CENTRAL PARK GREENHOUSE", "      WHISPERMAN", "      OPERA- NEX", "      OPERAHOUSE", "     SUBTERRAINIA", "       CREATURE", "        WARDS", "    PETER BORNICK", "  INCARNATE/DYNATEK", "      JIM DRAKE", "      DISASTERS"},
 {"      NOCTROPOLIS", "       DARKSHEER", "       STILETTO", "    PERE DESMOND", "       SUCCUBE", "        CYGNE", "      SAM JENKINS", "       MME SHOTO", "      MAINVERTE", "        TOPHAT", "        BOUCHER", "    MAITRE MACABRE", "       DREALMER", "         FLUX", "    TOUR SUNSPIRE", "      LIQUIDARK", "    PEAU D'OMBRE", "    ANTRE D'OMBRE", "     OBSERVATOIRE", "      CATHEDRALE", "     BEN HUTCHINS", "      MAUSOLEE", " SERRE DE CENTRAL PARK", "      CHUCHOTEUR", "      OPERA-NEX", "         OPERA", "     SUBTERRAINIA", "       CREATURE", "      PUPILLES", "    PETER BORNICK", "  INCARNATE/DYNATEK", "      JIM DRAKE", "     CATASTROPHES"},
 {"      NOCTROPOLIS", "       TENEBROSO", "       STILETTO", "     PADRE DESMOND", "       SUCCUBUS", "        CYGNUS", "      SAM JENKINS", "      SRA. SHOTO", "       DEDOVERDE", "          DIVA", "      CARNICERO", "   MAESTRO MACABRO", "       MORFEICO", "         FLUX", "       TORRE SOLAR", "    LIQUIOSCURO", "   PIEL SOMBRIA", "   CUEVA SOMBRIA", "    OBSERVATORIO", "       CATEDRAL", "     BEN HUTCHINS", "       MAUSOLEO", "        INVERNADERO", "      WHISPERMAN", "      OPERA- NEX", "           OPERA", "      SUBTERRANIA", "       CRIATURA", "   GUARDIANES", "    PETER BORNICK", " ENCARNADAS/DYNATEK", "      JIM DRAKE", "      DESASTRES"},
-{"      NOCTROPOLIS", "       DARKSHEER", "       STILETTO", "    VATER DESMOND", "       SUCCUBUS", "        CYGNUS", "      SAM JENKINS", "      MISS SHOTO", "     GR\x9A""ND\x8E""UMLING", "  MISS ZYLINDERCHEN", "        METZGER", "    DOKTOR MAKABER", "       TR\x8E""UMLER", "         FLUX", "     SONNENNADEL", "       DUSTER\x99""L", "     FINSTERHAUT", "    SCHATTENHORT", "    OBSERVATORIUM", "         DOM", "    BEN HUTCHINS", "     MAUSOLEUM", "CENTRAL PARK TREIBHAUS", "     FL\x9A""STERMANN", "      OPER-NEX", "      OPERNHAUS", "    SUBTERRAINIA", "      GESCH\x99""PF", "      DIE WEHR", "    PETER BORNICK", "  INCARNATE/DYNATEK", "      JIM DRAKE", "    KATASTROPHEN"},
+{"      NOCTROPOLIS", "       DARKSHEER", "       STILETTO", "    VATER DESMOND", "       SUCCUBUS", "        CYGNUS", "      SAM JENKINS", "      MISS SHOTO", "     GR\x9A""ND\x8E""UMLING", "  MISS ZYLINDERCHEN", "        METZGER", "    DOKTOR MAKABER", "       TR\x8E""UMLER", "         FLUX", "     SONNENNADEL", "       DUSTER\x99""L", "     FINSTERHAUT", "    SCHATTENHORT", "    OBSERVATORIUM", "         DOM", "    BEN HUTCHINS", "     MAUSOLEUM", "CENTRAL PARK TREIBHAUS", "     FL\x9A""STERMANN", "      OPER-NEX", "      OPERNHAUS", "    SUBTERRAINIA", "      GESCH\x99""PF", "      DIE WEHR", "    PETER BORNICK", "  INCARNATE/DYNATEK", "      JIM DRAKE", "    KATASTROPHEN"}, //-V653
 };
 
 
@@ -2077,7 +2077,7 @@ static constexpr const char *NOCT_GENERAL_MESSAGES[4][10] = {
 	"\x80""a ne s'ouvre pas.",
 	"\x80""a ne bouge pas.",
 	"Vous ne pouvez pas prendre \x87""a.",
-	"Vous n'obtenez aucune r\x82""ponse.",
+	"Vous n'obtenez aucune r\x82""ponse.", //-V653
 	"\x80""a ne marche pas.",
 	"Vous ne pouvez pas aller l\x85.",
 	"\x80""a ne marche pas.",
diff --git a/engines/access/scripts.cpp b/engines/access/scripts.cpp
index 00280b0edb8..1d9ed34f795 100644
--- a/engines/access/scripts.cpp
+++ b/engines/access/scripts.cpp
@@ -214,7 +214,8 @@ void Scripts::charLoop() {
 	bool endFlag = _endFlag;
 	_continuenceFlag = false;
 
-	int64 pos = _data->pos();
+	// Data should never be null here, but might be after running script.
+	int64 pos = _data->pos(); // -V595
 
 	_sequence = ROOM_SCRIPT;
 	searchForSequence();
@@ -289,7 +290,8 @@ int Scripts::executeScript() {
 	_endFlag = false;
 	_returnCode = 0;
 
-	debugC(1, kDebugScripts, "** Start script execution (at %d/%d bytes) **", (int)_data->pos(), (int)_data->size());
+	// Data should never be null here but may be after running script
+	debugC(1, kDebugScripts, "** Start script execution (at %d/%d bytes) **", (int)_data->pos(), (int)_data->size()); // -V595
 	do {
 		// Get next command, skipping over script start start if it's being pointed to
 		while ((_scriptCommand = _data->readByte()) == SCRIPT_START_BYTE)




More information about the Scummvm-git-logs mailing list