diff options
| author | Kari Salminen | 2008-07-07 22:02:01 +0000 | 
|---|---|---|
| committer | Kari Salminen | 2008-07-07 22:02:01 +0000 | 
| commit | e74d01a59a17894a85723db3b9af4dacac659336 (patch) | |
| tree | cd88db57ea7c9ac0f5dc20ccef07c1dab91bc1a5 | |
| parent | aee23f36a2b0ed26588c40d96ef0eee53c482d75 (diff) | |
| download | scummvm-rg350-e74d01a59a17894a85723db3b9af4dacac659336.tar.gz scummvm-rg350-e74d01a59a17894a85723db3b9af4dacac659336.tar.bz2 scummvm-rg350-e74d01a59a17894a85723db3b9af4dacac659336.zip  | |
Fix for bathroom door opening crash in Operation Stealth's start.
svn-id: r32951
| -rw-r--r-- | engines/cine/gfx.cpp | 11 | 
1 files changed, 11 insertions, 0 deletions
diff --git a/engines/cine/gfx.cpp b/engines/cine/gfx.cpp index 47446f2410..2b7f3b8890 100644 --- a/engines/cine/gfx.cpp +++ b/engines/cine/gfx.cpp @@ -969,6 +969,7 @@ void OSRenderer::drawBackground() {  /*! \brief Draw one overlay   * \param it Overlay info + * \todo Add handling of type 22 overlays   */  void OSRenderer::renderOverlay(const Common::List<overlay>::iterator &it) {  	int len; @@ -979,6 +980,9 @@ void OSRenderer::renderOverlay(const Common::List<overlay>::iterator &it) {  	switch (it->type) {  	// color sprite  	case 0: +		if (objectTable[it->objIdx].frame < 0) { +			break; +		}  		sprite = animDataTable + objectTable[it->objIdx].frame;  		len = sprite->_realWidth * sprite->_height;  		mask = new byte[len]; @@ -988,6 +992,13 @@ void OSRenderer::renderOverlay(const Common::List<overlay>::iterator &it) {  		delete[] mask;  		break; +	// bitmap +	case 4: +		if (objectTable[it->objIdx].frame >= 0) { +			FWRenderer::renderOverlay(it); +		} +		break; +  	// masked background  	case 20:  		assert(it->objIdx < NUM_MAX_OBJECT);  | 
