[Scummvm-cvs-logs] SF.net SVN: scummvm:[35136] scummvm/trunk/engines/cine

buddha_ at users.sourceforge.net buddha_ at users.sourceforge.net
Thu Nov 20 23:22:47 CET 2008


Revision: 35136
          http://scummvm.svn.sourceforge.net/scummvm/?rev=35136&view=rev
Author:   buddha_
Date:     2008-11-20 22:22:47 +0000 (Thu, 20 Nov 2008)

Log Message:
-----------
Fix resizing of the internal color array in Palette-class.

Modified Paths:
--------------
    scummvm/trunk/engines/cine/pal.cpp
    scummvm/trunk/engines/cine/pal.h

Modified: scummvm/trunk/engines/cine/pal.cpp
===================================================================
--- scummvm/trunk/engines/cine/pal.cpp	2008-11-20 22:16:18 UTC (rev 35135)
+++ scummvm/trunk/engines/cine/pal.cpp	2008-11-20 22:22:47 UTC (rev 35136)
@@ -223,7 +223,7 @@
 }
 
 Palette& Palette::load9BitColors(uint16 *colors, uint colorCount) {
-	_colors.resize(colorCount);
+	setColorCount(colorCount);
 	for (uint i = 0; i < colorCount; i++) {
 		setComponent(i, R_INDEX, ((colors[i] >> 8) & 7) * COMPONENT_MUL);
 		setComponent(i, G_INDEX, ((colors[i] >> 4) & 7) * COMPONENT_MUL);
@@ -234,7 +234,7 @@
 }
 
 Palette& Palette::load24BitColors(byte *colors, uint colorCount) {
-	_colors.resize(colorCount);
+	setColorCount(colorCount);
 	for (uint i = 0; i < colorCount; i++) {
 		setComponent(i, R_INDEX, colors[i * 3 + 0]);
 		setComponent(i, G_INDEX, colors[i * 3 + 1]);
@@ -244,4 +244,8 @@
 	return *this;
 }
 
+void Palette::setColorCount(uint colorCount) {
+	_colors.resize(colorCount * COMPONENTS_PER_COLOR);
+}
+
 } // End of namespace Cine

Modified: scummvm/trunk/engines/cine/pal.h
===================================================================
--- scummvm/trunk/engines/cine/pal.h	2008-11-20 22:16:18 UTC (rev 35135)
+++ scummvm/trunk/engines/cine/pal.h	2008-11-20 22:22:47 UTC (rev 35136)
@@ -80,6 +80,7 @@
 	PackedColor getColor(byte colorIndex);
 	void setColor(byte colorIndex, PackedColor color);
 	void saturatedAddColor(byte index, signed r, signed g, signed b);
+	void setColorCount(uint colorCount);
 
 	Common::Array<byte> _colors;
 };


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list