[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gnash-dev] DrawingApiTest.swf
From: |
strk |
Subject: |
Re: [Gnash-dev] DrawingApiTest.swf |
Date: |
Thu, 3 May 2007 11:32:06 +0200 |
On Thu, May 03, 2007 at 10:12:32AM +0200, Udo Giacomozzi wrote:
> Hello strk,
>
> Friday, April 27, 2007, 3:34:04 PM, you wrote:
> s> I took a closer look at the problem. All failing tests are checking
> s> for the color "white" and getting back the color "black"
> s> so I suspect this has to do with setting the background color.
>
> Instead I think it is just some random value you get (uninitialized
> memory).
>
> s> Is this the reason why AGG wants the first rendering call to
> s> be accompained by a WORLD range ?
>
> I just commited a patch that resets invalidated bounds to world in
> init_buffer. After all the old coordinates make no sense after
> resizing the buffer.
It doesn't help, as MovieTester still calls set_invalidated_bounds
after fetching the bounds from the core lib.
The problem is the the *first* time add_invalidated_bounds() is called,
it only returns the actual shapes bounds, not the world bounds, so
background is not taken in consideration.
Here's a short patch to MovieTester.cpp showing you the problem:
Index: testsuite/MovieTester.cpp
===================================================================
RCS file: /sources/gnash/gnash/testsuite/MovieTester.cpp,v
retrieving revision 1.31
diff -U2 -r1.31 MovieTester.cpp
--- testsuite/MovieTester.cpp 24 Apr 2007 20:59:10 -0000 1.31
+++ testsuite/MovieTester.cpp 3 May 2007 09:31:53 -0000
@@ -142,5 +142,5 @@
// Force full redraw by using a WORLD invalidated ranges
InvalidatedRanges ranges = _invalidatedBounds; // copy the cache, so we
don't accidentally modify it ...
- ranges.setWorld(); // TESTING !! TODO: make this a parameter
+ //ranges.setWorld(); // TESTING !! TODO: make this a parameter
for (TRenderers::const_iterator it=_testingRenderers.begin(),
itE=_testingRenderers.end();
--strk;