[Scummvm-git-logs] scummvm branch-2-6 -> a31a9a52d58f306d8d5ed848353a51a72678ce86
criezy
noreply at scummvm.org
Mon Jun 20 22:53:30 UTC 2022
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
4441baaad3 AGS: Add sanity check in putpixel to avoid overflow
a31a9a52d5 AGS: Add new detection entry for Gemini Rue and Shardlight
Commit: 4441baaad38bbc26bfcb78ddf2a6188c67bea64a
https://github.com/scummvm/scummvm/commit/4441baaad38bbc26bfcb78ddf2a6188c67bea64a
Author: Thierry Crozat (criezy at scummvm.org)
Date: 2022-06-20T23:52:14+01:00
Commit Message:
AGS: Add sanity check in putpixel to avoid overflow
The alfont code seems to have some inconsistency between the real from
height and the maximum height used when drawing in alfont_textout_ex.
This can cause trying to write out of bounds, and then random crashes.
This fixes bug #13601
Changed paths:
engines/ags/lib/allegro/gfx.cpp
diff --git a/engines/ags/lib/allegro/gfx.cpp b/engines/ags/lib/allegro/gfx.cpp
index 2b5d5ea2b00..3a4aa08e59e 100644
--- a/engines/ags/lib/allegro/gfx.cpp
+++ b/engines/ags/lib/allegro/gfx.cpp
@@ -234,6 +234,8 @@ void memory_putpixel(BITMAP *bmp, int x, int y, int color) {
void putpixel(BITMAP *bmp, int x, int y, int color) {
Graphics::ManagedSurface &surf = **bmp;
+ if (x >= surf.w || y >= surf.h)
+ return;
void *p = surf.getBasePtr(x, y);
switch (surf.format.bytesPerPixel) {
Commit: a31a9a52d58f306d8d5ed848353a51a72678ce86
https://github.com/scummvm/scummvm/commit/a31a9a52d58f306d8d5ed848353a51a72678ce86
Author: Thierry Crozat (criezy at scummvm.org)
Date: 2022-06-20T23:52:14+01:00
Commit Message:
AGS: Add new detection entry for Gemini Rue and Shardlight
Changed paths:
engines/ags/detection_tables.h
diff --git a/engines/ags/detection_tables.h b/engines/ags/detection_tables.h
index 03643eedbcb..a7ad55afb25 100644
--- a/engines/ags/detection_tables.h
+++ b/engines/ags/detection_tables.h
@@ -3351,7 +3351,9 @@ const AGSGameDescription GAME_DESCRIPTIONS[] = {
GAME_ENTRY_GOG("geminirue", "gemini_rue_pc.exe", "f49a61ea46feb86f89de3c136ad809ff", 73412249), // Win v1.03
GAME_ENTRY_GOG("geminirue", "gemini rue.exe", "5f747ea1c5f624d3716926fe1ca5135d", 73450387), // Win v2.0
GAME_ENTRY_GOG("geminirue", "gemini rue.exe", "5f747ea1c5f624d3716926fe1ca5135d", 73486515), // Win v2.1
+ GAME_ENTRY_GOG("geminirue", "gemini rue.exe", "5f747ea1c5f624d3716926fe1ca5135d", 73505075), // Win v2.2
GAME_ENTRY_GOG("geminirue", "ac2game.dat", "056239de34dfa52cfe1b645eee4eacb7", 70356639), // Mac v2.1
+ GAME_ENTRY_GOG("geminirue", "ac2game.dat", "056239de34dfa52cfe1b645eee4eacb7", 70375199), // Mac v2.2
GAME_ENTRY_GOG("geminirue", "agsgame.dat", "f3c0c7d3892bdd8963e8ce017f73de08", 62069353), // Linux
GAME_ENTRY("geminirue", "gemini rue.exe", "0bdfb2139abaae5ae2dc85f1aacfd3f6", 61926695),
DETECTION_ENTRY("geminirue", "gemini rue.exe", "0bdfb2139abaae5ae2dc85f1aacfd3f6", 64650419, Common::DE_DEU, nullptr, nullptr, GAMEFLAG_FORCE_AA), // German retail
@@ -3455,6 +3457,7 @@ const AGSGameDescription GAME_DESCRIPTIONS[] = {
GAME_ENTRY_EN_STEAM("shardlight", "shardlight.exe", "cc447656f408ac32e8443274c3f70c67", 643459667), // v2.0
GAME_ENTRY_EN_STEAM("shardlight", "shardlight.exe", "cc447656f408ac32e8443274c3f70c67", 643461648), // v2.1
GAME_ENTRY_EN_GOG("shardlight", "ac2game.dat", "df94d3c1cec961c89894c676b000e7bc", 640346706), // Mac v2.3a
+ GAME_ENTRY_EN_GOG("shardlight", "ac2game.dat", "df94d3c1cec961c89894c676b000e7bc", 640348438), // Mac v2.4
GAME_ENTRY_EN("shardlight", "shardlight.exe", "ee801fba52d252249677a9170bd2db96", 642151325),
GAME_ENTRY_EN("shardlight", "shardlight.exe", "ee801fba52d252249677a9170bd2db96", 642142591),
GAME_ENTRY_EN("shivah", "shivah.exe", "6cddccb3744ec5c6af7c398fb7b3b11c", 19542815), // Official website
More information about the Scummvm-git-logs
mailing list