[ scummvm-Patches-744448 ] ALL: restoreBG() doesn't always completely remove the mask

SourceForge.net noreply at sourceforge.net
Tue May 27 21:07:12 CEST 2003


Patches item #744448, was opened at 2003-05-27 21:07
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=418822&aid=744448&group_id=37116

Category: None
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Torbjörn Andersson (eriktorbjorn)
Assigned to: Nobody/Anonymous (nobody)
Summary: ALL: restoreBG() doesn't always completely remove the mask

Initial Comment:
There are cases where restoreBG() doesn't completely
remove the mask. One noticeable case is in Sam & Max
where Max says "Your main attraction was a block of
ice?". In this case

rect.left = 12
rect.right = 234
width = 222

With the current method mask_width will be 28. The
result is that part of the "f" (the last character on
the first line) still masks the Kushman brothers. With
the patch it will be 29, and all of the mask is removed.

A simpler case to verify by hand:

rect.left = 7
rect.right = 17
width = 10

Note that while pixel 17 is not considered to be inside
the rectangle it still spans over three bytes of mask
buffer. But we calculate the mask_width to 2.

I'm a bit too tired right now to feel confident enough
to apply this change myself, but I *think* I got it right.


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=418822&aid=744448&group_id=37116




More information about the Scummvm-tracker mailing list