[Scummvm-git-logs] scummvm master -> eba7f620f621defb70cde94081df19403b5205d4
scemino
noreply at scummvm.org
Wed Mar 20 21:32:12 UTC 2024
This automated email contains information about 6 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
04dc33b870 TWP: Fix calling the 'Finalize' virtual function in the destructor in SQClass. PVS-Studio V1053
245a9be961 I18N: Fix some translations (French)
d2b9ab6555 TWP: Fix unchecked return value in playSound.
0982630cb6 TWP: Fix various unchecked return value.
9eaeb40184 TWP: Fix uninitialized scalar field _useFlag in TwpEngine.
eba7f620f6 TWP: Fix unchecked return value in drawThreads.
Commit: 04dc33b870d4465a604479df1a7d3fe827fbd95f
https://github.com/scummvm/scummvm/commit/04dc33b870d4465a604479df1a7d3fe827fbd95f
Author: scemino (scemino74 at gmail.com)
Date: 2024-03-20T22:31:03+01:00
Commit Message:
TWP: Fix calling the 'Finalize' virtual function in the destructor in SQClass. PVS-Studio V1053
Changed paths:
engines/twp/squirrel/sqclass.cpp
diff --git a/engines/twp/squirrel/sqclass.cpp b/engines/twp/squirrel/sqclass.cpp
index 31ea068346b..f8d65d1161c 100755
--- a/engines/twp/squirrel/sqclass.cpp
+++ b/engines/twp/squirrel/sqclass.cpp
@@ -51,7 +51,7 @@ void SQClass::FinalizeCore() {
SQClass::~SQClass()
{
REMOVE_FROM_CHAIN(&_sharedstate->_gc_chain, this);
- Finalize();
+ FinalizeCore();
}
bool SQClass::NewSlot(SQSharedState *ss,const SQObjectPtr &key,const SQObjectPtr &val,bool bstatic)
Commit: 245a9be96180e9b67f6ccf605926c8ae588b2044
https://github.com/scummvm/scummvm/commit/245a9be96180e9b67f6ccf605926c8ae588b2044
Author: scemino (scemino74 at gmail.com)
Date: 2024-03-20T22:31:03+01:00
Commit Message:
I18N: Fix some translations (French)
Changed paths:
po/fr_FR.po
diff --git a/po/fr_FR.po b/po/fr_FR.po
index 458b042f4f5..9d09213344f 100644
--- a/po/fr_FR.po
+++ b/po/fr_FR.po
@@ -11,8 +11,8 @@ msgstr ""
"Project-Id-Version: ScummVM 1.8.0git\n"
"Report-Msgid-Bugs-To: scummvm-devel at lists.scummvm.org\n"
"POT-Creation-Date: 2024-03-17 01:12+0000\n"
-"PO-Revision-Date: 2024-03-17 21:45+0000\n"
-"Last-Translator: Purple T <ZEONK at hotmail.com>\n"
+"PO-Revision-Date: 2024-03-20 20:15+0100\n"
+"Last-Translator: Scemino <scemino74 at gmail.com>\n"
"Language-Team: French <https://translations.scummvm.org/projects/scummvm/"
"scummvm/fr/>\n"
"Language: fr_FR\n"
@@ -20,7 +20,7 @@ msgstr ""
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
-"X-Generator: Weblate 4.4\n"
+"X-Generator: Poedit 3.4.2\n"
"X-Language-name: Français\n"
#. I18N: built on <build date> with <compiler>
@@ -9509,7 +9509,7 @@ msgstr "Qualité des musiques :"
msgid ""
"Select music quality. The original lets you choose this from the Game menu."
msgstr ""
-"Selctionne la qualité des musiques. L'original vous permet de choisir cette "
+"Sélectionne la qualité des musiques. L'original vous permet de choisir cette "
"qualité dans le menu du jeu."
#: engines/scumm/dialogs.cpp:1381
@@ -9518,7 +9518,7 @@ msgid ""
"detection and speed tests, but also allows changes through the Game menu to "
"some degree."
msgstr ""
-"Selctionne la qualité des musiques. L'original détermine les paramètres de "
+"Sélectionne la qualité des musiques. L'original détermine les paramètres de "
"base par détection du matériel et des tests de vitesse, mais permet aussi "
"certains changements via le menu du jeu."
@@ -11071,15 +11071,15 @@ msgstr "Vidéo :"
#. I18N: Setting to switch toiled paper to be shown as "over".
#: engines/twp/dialogs.cpp:37
msgid "Toilet paper over"
-msgstr "Papier toilette vide"
+msgstr "Papier toilette dessus"
#: engines/twp/dialogs.cpp:38
msgid ""
"The toilet paper in some toilets will be shown \"over\".\n"
"It's a joke option that has no effects on the gameplay."
msgstr ""
-"Les rouleaux de papier toilette dans certains toilettes apparaitrons comme "
-"\"vides\".\n"
+"Le papier toilette dans certains toilettes apparaitrons comme « au-"
+"dessus ».\n"
"Cette option est une blague qui n'a aucun effet sur le gameplay."
#. I18N: Setting to enable or disable additional jokes in the game.
Commit: d2b9ab655583370c02cfbff46dbea556195917b1
https://github.com/scummvm/scummvm/commit/d2b9ab655583370c02cfbff46dbea556195917b1
Author: scemino (scemino74 at gmail.com)
Date: 2024-03-20T22:31:04+01:00
Commit Message:
TWP: Fix unchecked return value in playSound.
Coverity CID 1540599
Changed paths:
engines/twp/soundlib.cpp
diff --git a/engines/twp/soundlib.cpp b/engines/twp/soundlib.cpp
index 58031a60d0a..5ead663a0d1 100644
--- a/engines/twp/soundlib.cpp
+++ b/engines/twp/soundlib.cpp
@@ -154,11 +154,8 @@ static SQInteger playObjectSound(HSQUIRRELVM v) {
// _flourescentSoundID = playSound(soundFlourescentOn)
static SQInteger playSound(HSQUIRRELVM v) {
Common::SharedPtr<SoundDefinition> sound = sqsounddef(v, 2);
- if (!sound) {
- SQInteger soundId = 0;
- sqget(v, 2, soundId);
- return sq_throwerror(v, Common::String::format("failed to get sound: %lld", soundId).c_str());
- }
+ if (!sound)
+ return sq_throwerror(v, "failed to get sound");
int soundId = g_twp->_audio->play(sound, Audio::Mixer::SoundType::kPlainSoundType);
sqpush(v, soundId);
return 1;
Commit: 0982630cb62269f8a0de2417c6c9d8fe189947ef
https://github.com/scummvm/scummvm/commit/0982630cb62269f8a0de2417c6c9d8fe189947ef
Author: scemino (scemino74 at gmail.com)
Date: 2024-03-20T22:31:04+01:00
Commit Message:
TWP: Fix various unchecked return value.
Coverity CID 1540595
Changed paths:
engines/twp/actorlib.cpp
engines/twp/genlib.cpp
engines/twp/objlib.cpp
engines/twp/roomlib.cpp
engines/twp/soundlib.cpp
engines/twp/syslib.cpp
diff --git a/engines/twp/actorlib.cpp b/engines/twp/actorlib.cpp
index 367c9e1dd07..78ccc05250a 100644
--- a/engines/twp/actorlib.cpp
+++ b/engines/twp/actorlib.cpp
@@ -186,8 +186,8 @@ static SQInteger actorCostume(HSQUIRRELVM v) {
return sq_throwerror(v, "failed to get name");
Common::String sheet;
- if (sq_gettop(v) == 4)
- sqget(v, 4, sheet);
+ if ((sq_gettop(v) == 4) && SQ_FAILED(sqget(v, 4, sheet)))
+ return sq_throwerror(v, "failed to get sheet");
debugC(kDebugActScript, "Actor costume %s %s", name.c_str(), sheet.c_str());
actor->setCostume(name, sheet);
return 0;
@@ -372,7 +372,7 @@ static SQInteger actorShowHideLayer(HSQUIRRELVM v, bool visible) {
if (SQ_FAILED(sqget(v, 3, layer)))
return sq_throwerror(v, "failed to get layer");
actor->showLayer(layer, visible);
- if(!visible) {
+ if (!visible) {
for (int i = 1; i <= 6; i++) {
actor->showLayer(Common::String::format("%s%d", layer.c_str(), i), false);
}
diff --git a/engines/twp/genlib.cpp b/engines/twp/genlib.cpp
index 5e4a66ac5f9..df5215b20bb 100644
--- a/engines/twp/genlib.cpp
+++ b/engines/twp/genlib.cpp
@@ -258,7 +258,8 @@ static SQInteger cameraPos(HSQUIRRELVM v) {
// Converts an integer to a char.
static SQInteger sqChr(HSQUIRRELVM v) {
SQInteger value;
- sqget(v, 2, value);
+ if (SQ_FAILED(sqget(v, 2, value)))
+ return sq_throwerror(v, "failed to get value");
Common::String s;
s += char(value);
sqpush(v, s);
diff --git a/engines/twp/objlib.cpp b/engines/twp/objlib.cpp
index ec49f1e1698..97ea25d1e82 100644
--- a/engines/twp/objlib.cpp
+++ b/engines/twp/objlib.cpp
@@ -62,7 +62,8 @@ static SQInteger createObject(HSQUIRRELVM v) {
switch (sq_gettype(v, framesIndex)) {
case OT_STRING: {
Common::String frame;
- sqget(v, framesIndex, frame);
+ if (SQ_FAILED(sqget(v, framesIndex, frame)))
+ return sq_throwerror(v, "failed to get frame");
frames.push_back(frame);
} break;
case OT_ARRAY:
@@ -401,7 +402,8 @@ static SQInteger objectHidden(HSQUIRRELVM v) {
Common::SharedPtr<Object> obj = sqobj(v, 2);
if (obj) {
SQInteger hidden = 0;
- sqget(v, 3, hidden);
+ if (SQ_FAILED(sqget(v, 3, hidden)))
+ return sq_throwerror(v, "failed to get hidden");
debugC(kDebugObjScript, "Sets object visible %s/%s to %s", obj->_name.c_str(), obj->_key.c_str(), hidden == 0 ? "true" : "false");
obj->_node->setVisible(hidden == 0);
}
@@ -465,11 +467,12 @@ static SQInteger objectIcon(HSQUIRRELVM v) {
SQInteger fps = 10;
sq_push(v, 3);
sq_pushnull(v); // null iterator
- if (SQ_SUCCEEDED(sq_next(v, -2)))
- sqget(v, -1, fps);
+ if (SQ_SUCCEEDED(sq_next(v, -2)) && SQ_FAILED(sqget(v, -1, fps)))
+ return sq_throwerror(v, "failed to get fps");
sq_pop(v, 2);
while (SQ_SUCCEEDED(sq_next(v, -2))) {
- sqget(v, -1, icon);
+ if(SQ_FAILED(sqget(v, -1, icon)))
+ return sq_throwerror(v, "failed to get icon");
icons.push_back(icon);
sq_pop(v, 2);
}
diff --git a/engines/twp/roomlib.cpp b/engines/twp/roomlib.cpp
index b0798b608a1..365b25cb16b 100644
--- a/engines/twp/roomlib.cpp
+++ b/engines/twp/roomlib.cpp
@@ -373,17 +373,28 @@ static SQInteger roomEffect(HSQUIRRELVM v) {
SQInteger nArgs = sq_gettop(v);
if (roomEffect == RoomEffect::Ghost) {
if (nArgs == 14) {
- sqget(v, 3, g_twp->_shaderParams->iFade);
- sqget(v, 4, g_twp->_shaderParams->wobbleIntensity);
- sqget(v, 6, g_twp->_shaderParams->shadows.rgba.r);
- sqget(v, 7, g_twp->_shaderParams->shadows.rgba.g);
- sqget(v, 8, g_twp->_shaderParams->shadows.rgba.b);
- sqget(v, 9, g_twp->_shaderParams->midtones.rgba.r);
- sqget(v, 10, g_twp->_shaderParams->midtones.rgba.g);
- sqget(v, 11, g_twp->_shaderParams->midtones.rgba.b);
- sqget(v, 12, g_twp->_shaderParams->highlights.rgba.r);
- sqget(v, 13, g_twp->_shaderParams->highlights.rgba.g);
- sqget(v, 14, g_twp->_shaderParams->highlights.rgba.b);
+ if (SQ_FAILED(sqget(v, 3, g_twp->_shaderParams->iFade)))
+ return sq_throwerror(v, "failed to get iFade");
+ if (SQ_FAILED(sqget(v, 4, g_twp->_shaderParams->wobbleIntensity)))
+ return sq_throwerror(v, "failed to get wobbleIntensity");
+ if (SQ_FAILED(sqget(v, 6, g_twp->_shaderParams->shadows.rgba.r)))
+ return sq_throwerror(v, "failed to get shadows r");
+ if (SQ_FAILED(sqget(v, 7, g_twp->_shaderParams->shadows.rgba.g)))
+ return sq_throwerror(v, "failed to get shadows g");
+ if (SQ_FAILED(sqget(v, 8, g_twp->_shaderParams->shadows.rgba.b)))
+ return sq_throwerror(v, "failed to get shadows b");
+ if (SQ_FAILED(sqget(v, 9, g_twp->_shaderParams->midtones.rgba.r)))
+ return sq_throwerror(v, "failed to get midtones r");
+ if (SQ_FAILED(sqget(v, 10, g_twp->_shaderParams->midtones.rgba.g)))
+ return sq_throwerror(v, "failed to get midtones g");
+ if (SQ_FAILED(sqget(v, 11, g_twp->_shaderParams->midtones.rgba.b)))
+ return sq_throwerror(v, "failed to get midtones b");
+ if (SQ_FAILED(sqget(v, 12, g_twp->_shaderParams->highlights.rgba.r)))
+ return sq_throwerror(v, "failed to get highlights r");
+ if (SQ_FAILED(sqget(v, 13, g_twp->_shaderParams->highlights.rgba.g)))
+ return sq_throwerror(v, "failed to get highlights g");
+ if (SQ_FAILED(sqget(v, 14, g_twp->_shaderParams->highlights.rgba.b)))
+ return sq_throwerror(v, "failed to get highlights b");
} else {
g_twp->_shaderParams->iFade = 1.f;
g_twp->_shaderParams->wobbleIntensity = 1.f;
diff --git a/engines/twp/soundlib.cpp b/engines/twp/soundlib.cpp
index 5ead663a0d1..078b9d58e2f 100644
--- a/engines/twp/soundlib.cpp
+++ b/engines/twp/soundlib.cpp
@@ -130,10 +130,10 @@ static SQInteger playObjectSound(HSQUIRRELVM v) {
return sq_throwerror(v, "failed to get actor or object");
SQInteger loopTimes = 1;
float fadeInTime = 0.0f;
- if (nArgs >= 4) {
- sqget(v, 4, loopTimes);
- sqget(v, 5, fadeInTime);
- }
+ if ((nArgs >= 4) && SQ_FAILED(sqget(v, 4, loopTimes)))
+ return sq_throwerror(v, "failed to get loopTimes");
+ if ((nArgs >= 5) && SQ_FAILED(sqget(v, 5, fadeInTime)))
+ return sq_throwerror(v, "failed to get fadeInTime");
if (obj->_sound) {
g_twp->_audio->stop(obj->_sound);
@@ -206,15 +206,13 @@ static SQInteger loopMusic(HSQUIRRELVM v) {
SQInteger loopTimes = -1;
float fadeInTime = 0.f;
SQInteger numArgs = sq_gettop(v);
- Common::SharedPtr<SoundDefinition> sound = sqsounddef(v, 2);
+ Common::SharedPtr<SoundDefinition> sound(sqsounddef(v, 2));
if (!sound)
return sq_throwerror(v, "failed to get music");
- if (numArgs == 3) {
- sqget(v, 3, loopTimes);
- }
- if (numArgs == 4) {
- sqget(v, 4, fadeInTime);
- }
+ if ((numArgs >= 3) && SQ_FAILED(sqget(v, 3, loopTimes)))
+ return sq_throwerror(v, "failed to get loopTimes");
+ if ((numArgs >= 4) && SQ_FAILED(sqget(v, 4, fadeInTime)))
+ return sq_throwerror(v, "failed to get fadeInTime");
int soundId = g_twp->_audio->play(sound, Audio::Mixer::kMusicSoundType, loopTimes, fadeInTime);
sqpush(v, soundId);
return 1;
diff --git a/engines/twp/syslib.cpp b/engines/twp/syslib.cpp
index 6656806ef0b..922a936bd7f 100644
--- a/engines/twp/syslib.cpp
+++ b/engines/twp/syslib.cpp
@@ -331,8 +331,8 @@ static SQInteger breakwhileinputoff(HSQUIRRELVM v) {
// }
static SQInteger breakwhilerunning(HSQUIRRELVM v) {
SQInteger id = 0;
- if (sq_gettype(v, 2) == OT_INTEGER)
- sqget(v, 2, id);
+ if ((sq_gettype(v, 2) == OT_INTEGER) && SQ_FAILED(sqget(v, 2, id)))
+ return sq_throwerror(v, "failed to get id");
debugC(kDebugSysScript, "breakwhilerunning: %lld", id);
Common::SharedPtr<ThreadBase> t = sqthread(id);
Commit: 9eaeb40184b52428eb48f2c64de27a333ceda721
https://github.com/scummvm/scummvm/commit/9eaeb40184b52428eb48f2c64de27a333ceda721
Author: scemino (scemino74 at gmail.com)
Date: 2024-03-20T22:31:04+01:00
Commit Message:
TWP: Fix uninitialized scalar field _useFlag in TwpEngine.
Coverity CID 1540545
Changed paths:
engines/twp/twp.cpp
diff --git a/engines/twp/twp.cpp b/engines/twp/twp.cpp
index 0ae3397360c..d536c52beff 100644
--- a/engines/twp/twp.cpp
+++ b/engines/twp/twp.cpp
@@ -60,7 +60,8 @@ TwpEngine *g_twp;
TwpEngine::TwpEngine(OSystem *syst, const TwpGameDescription *gameDesc)
: Engine(syst),
_gameDescription(gameDesc),
- _randomSource("Twp") {
+ _randomSource("Twp"),
+ _useFlag(UseFlag::ufNone) {
g_twp = this;
_dialog.reset(new Dialog());
_dialog->_tgt.reset(new EngineDialogTarget());
Commit: eba7f620f621defb70cde94081df19403b5205d4
https://github.com/scummvm/scummvm/commit/eba7f620f621defb70cde94081df19403b5205d4
Author: scemino (scemino74 at gmail.com)
Date: 2024-03-20T22:31:04+01:00
Commit Message:
TWP: Fix unchecked return value in drawThreads.
Coverity CID 1540549
Changed paths:
engines/twp/debugtools.cpp
diff --git a/engines/twp/debugtools.cpp b/engines/twp/debugtools.cpp
index fb4e1c545cc..639750a4f41 100644
--- a/engines/twp/debugtools.cpp
+++ b/engines/twp/debugtools.cpp
@@ -84,7 +84,6 @@ static void drawThreads() {
if (g_twp->_cutscene) {
Common::SharedPtr<ThreadBase> thread(g_twp->_cutscene);
SQStackInfos infos;
-
ImGui::TableNextRow();
ImGui::TableNextColumn();
ImGui::Text("%5d", thread->getId());
@@ -107,8 +106,6 @@ static void drawThreads() {
for (const auto &thread : threads) {
SQStackInfos infos;
- sq_stackinfos(thread->getThread(), 0, &infos);
-
ImGui::TableNextRow();
ImGui::TableNextColumn();
ImGui::Text("%5d", thread->getId());
More information about the Scummvm-git-logs
mailing list