On Tue, Mar 06, 2007 at 11:46:30PM +0100, Bastiaan Jacques wrote: > > > On Tue, 6 Mar 2007, Udo Giacomozzi wrote: > > >Hello Bastiaan, > > > >Tuesday, March 6, 2007, 6:40:05 PM, you wrote: > >BJ> - unsigned int width = region.width()+1; > > > >I patched this some while ago because region.width() is *not* enough! > >region.width() is implemented like: > > > > region.width() := getMaxX() - getMinX() > > > >In integer domain this is off by one since width==1 when > >getMaxX()==getMinX() while it should be 1, otherwise it would be a > >NULL region. > > > >So, region.width()+1 *is* correct. > > It can be correct only if region.width() < xres. Which is not always true; > therefore this code will sometimes try to copy xres+1 bytes from the agg > buffer.
You can use Intersection(RangeType&, RangeType&) to trim any overflow. --strk; _______________________________________________ Gnash-commit mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gnash-commit
