[Scummvm-cvs-logs] scummvm master -> 870a583c8b93eb560dca37add3cf9d98f21d594a
eriktorbjorn
eriktorbjorn at telia.com
Sun Aug 4 09:28:00 CEST 2013
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
870a583c8b MORTEVIELLE: Pass Pattern struct by reference
Commit: 870a583c8b93eb560dca37add3cf9d98f21d594a
https://github.com/scummvm/scummvm/commit/870a583c8b93eb560dca37add3cf9d98f21d594a
Author: Torbjörn Andersson (eriktorbjorn at users.sourceforge.net)
Date: 2013-08-04T00:24:33-07:00
Commit Message:
MORTEVIELLE: Pass Pattern struct by reference
This should avoid unnecessary copying of a 400+ byte struct. This
was a low-priority Coverity issue, for some reason without a CID.
Changed paths:
engines/mortevielle/mortevielle.h
engines/mortevielle/utils.cpp
diff --git a/engines/mortevielle/mortevielle.h b/engines/mortevielle/mortevielle.h
index 37901bb..eb5c8df 100644
--- a/engines/mortevielle/mortevielle.h
+++ b/engines/mortevielle/mortevielle.h
@@ -272,7 +272,7 @@ private:
void mainGame();
void playGame();
void handleAction();
- void displayCGAPattern(int n, Pattern p, nhom *pal);
+ void displayCGAPattern(int n, Pattern *p, nhom *pal);
void loadPalette();
void loadTexts();
void loadBRUIT5();
diff --git a/engines/mortevielle/utils.cpp b/engines/mortevielle/utils.cpp
index 705237c..af2c486 100644
--- a/engines/mortevielle/utils.cpp
+++ b/engines/mortevielle/utils.cpp
@@ -1997,7 +1997,7 @@ void MortevielleEngine::setPal(int n) {
palette(_cgaPal[n]._p);
for (int i = 0; i <= 15; ++i)
- displayCGAPattern(i, _patternArr[pal[i]._id], pal);
+ displayCGAPattern(i, &_patternArr[pal[i]._id], pal);
}
break;
default:
@@ -2009,15 +2009,15 @@ void MortevielleEngine::setPal(int n) {
* Engine function - Display a CGA pattern, using a specified palette
* @remarks Originally called 'outbloc'
*/
-void MortevielleEngine::displayCGAPattern(int n, Pattern p, nhom *pal) {
+void MortevielleEngine::displayCGAPattern(int n, Pattern *p, nhom *pal) {
int addr = n * 404 + 0xd700;
- WRITE_LE_UINT16(&_curPict[addr], p._tax);
- WRITE_LE_UINT16(&_curPict[addr + 2], p._tay);
+ WRITE_LE_UINT16(&_curPict[addr], p->_tax);
+ WRITE_LE_UINT16(&_curPict[addr + 2], p->_tay);
addr += 4;
- for (int i = 0; i < p._tax; ++i) {
- for (int j = 0; j < p._tay; ++j)
- _curPict[addr + j * p._tax + i] = pal[n]._hom[p._des[i + 1][j + 1]];
+ for (int i = 0; i < p->_tax; ++i) {
+ for (int j = 0; j < p->_tay; ++j)
+ _curPict[addr + j * p->_tax + i] = pal[n]._hom[p->_des[i + 1][j + 1]];
}
}
More information about the Scummvm-git-logs
mailing list