[Scummvm-git-logs] scummvm master -> 9c38762278fb4a330e92990c13a4a6ffa8d0e418
antoniou79
noreply at scummvm.org
Wed Aug 9 11:59:33 UTC 2023
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:
5efed15ec8 ACCESS: Add matching paths to SearchMan in case insensitive way
9c38762278 ACCESS: Fix warning for new Common::Point arrays
Commit: 5efed15ec851f71d1e24235116709a82bea4744a
https://github.com/scummvm/scummvm/commit/5efed15ec851f71d1e24235116709a82bea4744a
Author: antoniou79 (a.antoniou79 at gmail.com)
Date: 2023-08-09T14:54:13+03:00
Commit Message:
ACCESS: Add matching paths to SearchMan in case insensitive way
Previously the use of getChild("tdrom") was causing issues in File Systems such as on Android
getChild("tdrom") is "case sensitive" as the name given in the parameter is used for this FSNode,
but that name is not necessarily the actual name of the file or folder in the File System.
This can cause, then, methods such as FSNode::isDirectory() to fail.
Using the addSubDirectoryMatching() directly addresses this, since it can use a case insensitive
pattern to match folders and subfolders of folders, provided that folders are seperated
in the pattern with a forward slash.
Changed paths:
engines/access/access.cpp
diff --git a/engines/access/access.cpp b/engines/access/access.cpp
index 12572adbce6..ecc401e0a9e 100644
--- a/engines/access/access.cpp
+++ b/engines/access/access.cpp
@@ -159,12 +159,13 @@ void AccessEngine::initialize() {
// - The MCGA version, in the CDROM folder
// - The VESA version, in the TDROM folder
// We use the hires version.
- const Common::FSNode cdromDir = gameDataDir.getChild("tdrom");
+
+ // Use forward slash for the folders separator, as documented for SearchSet::addSubDirectoryMatching()
+ const Common::String subfolderMatchPrefix = "tdrom/";
for (int idx = 0; idx < 15; ++idx) {
- Common::String folder = (idx == 0) ? "game" :
- Common::String::format("chap%.2d", idx);
- SearchMan.addSubDirectoryMatching(cdromDir, folder);
+ Common::String folder = subfolderMatchPrefix + ((idx == 0) ? "game" : Common::String::format("chap%.2d", idx));
+ SearchMan.addSubDirectoryMatching(gameDataDir, folder);
}
}
Commit: 9c38762278fb4a330e92990c13a4a6ffa8d0e418
https://github.com/scummvm/scummvm/commit/9c38762278fb4a330e92990c13a4a6ffa8d0e418
Author: antoniou79 (a.antoniou79 at gmail.com)
Date: 2023-08-09T14:54:14+03:00
Commit Message:
ACCESS: Fix warning for new Common::Point arrays
Warning comes from Walloc-size-larger-than
Warning text was:
" warning: argument 1 range [18446744073709551615, 18446744073709551615] exceeds maximum object size 9223372036854775807 [-Walloc-size-larger-than=]
_walkOffDR = new Common::Point[dataCount]"
Changed paths:
engines/access/access.h
engines/access/amazon/amazon_player.cpp
engines/access/martian/martian_player.cpp
engines/access/player.cpp
diff --git a/engines/access/access.h b/engines/access/access.h
index 1cbe71cdf18..a6cf8ea0861 100644
--- a/engines/access/access.h
+++ b/engines/access/access.h
@@ -166,7 +166,7 @@ public:
ImageEntryList _images;
int _mouseMode;
- int _playerDataCount;
+ uint8 _playerDataCount;
int _currentManOld;
int _converseMode;
bool _currentCharFlag;
diff --git a/engines/access/amazon/amazon_player.cpp b/engines/access/amazon/amazon_player.cpp
index a29c999438f..729dc8e9957 100644
--- a/engines/access/amazon/amazon_player.cpp
+++ b/engines/access/amazon/amazon_player.cpp
@@ -47,7 +47,7 @@ void AmazonPlayer::load() {
_downDelta = -2;
_scrollConst = 2;
- for (int i = 0; i < _vm->_playerDataCount; ++i) {
+ for (uint8 i = 0; i < _vm->_playerDataCount; ++i) {
_walkOffRight[i] = OVEROFFR[i];
_walkOffLeft[i] = OVEROFFL[i];
_walkOffUp[i] = OVEROFFU[i];
@@ -78,7 +78,7 @@ void AmazonPlayer::load() {
_diagDownWalkMax = 5;
_game->_guard->setPosition(Common::Point(56, 190));
} else {
- for (int i = 0; i < _vm->_playerDataCount; ++i) {
+ for (uint8 i = 0; i < _vm->_playerDataCount; ++i) {
_walkOffRight[i] = SIDEOFFR[i];
_walkOffLeft[i] = SIDEOFFL[i];
_walkOffUp[i] = SIDEOFFU[i];
diff --git a/engines/access/martian/martian_player.cpp b/engines/access/martian/martian_player.cpp
index 7cf845b842a..39d57a755bb 100644
--- a/engines/access/martian/martian_player.cpp
+++ b/engines/access/martian/martian_player.cpp
@@ -46,7 +46,7 @@ void MartianPlayer::load() {
_downDelta = -5;
_scrollConst = 5;
- for (int i = 0; i < _vm->_playerDataCount; ++i) {
+ for (uint8 i = 0; i < _vm->_playerDataCount; ++i) {
_walkOffRight[i] = SIDEOFFR[i];
_walkOffLeft[i] = SIDEOFFL[i];
_walkOffUp[i] = SIDEOFFU[i];
diff --git a/engines/access/player.cpp b/engines/access/player.cpp
index 8b05b8dc02f..825b0bd51c6 100644
--- a/engines/access/player.cpp
+++ b/engines/access/player.cpp
@@ -98,7 +98,7 @@ Player::~Player() {
}
void Player::load() {
- int dataCount = _vm->_playerDataCount;
+ uint8 dataCount = _vm->_playerDataCount;
_walkOffRight = new int[dataCount];
_walkOffLeft = new int[dataCount];
_walkOffUp = new int[dataCount];
More information about the Scummvm-git-logs
mailing list