On Mon, May 21, 2007 at 12:40:14PM +0200, Udo Giacomozzi wrote: > Hello strk, > > Monday, May 21, 2007, 12:27:48 PM, you wrote: > >> What relies on that fill style? The render handler does *not*. > > s> Maybe it was that is_solid() call. > > In case of glyphs the AGG styles are initialized using the dummy fill > style (the private one of the render handler) and will contain exactly > one fill style (no matter what is defined in the shape_character_def).
Well, the is_solid() call was accessing an out-of-bound memory. Could be the problem was somewhere else, anyway I just added an assertion there: http://cvs.savannah.gnu.org/viewvc/gnash/backend/render_handler_agg_style.h?root=gnash&r1=1.14&r2=1.15 > I think a /well/ formed SWF will /not/ define any fill style for > fonts, so this check is wrong (for glyphs, at least). I was working on making gnash more robust. Intentionally feeding the parser with arbitrarily scrambled input. http://www.gnashdev.org/wiki/index.php/Robustness_testing > s> Can't clearly remember everything. > s> Anyway, should be easy to remove the dummy entry and the check when > s> dealing with fonts, or maybe add a different check (0 or 1 for fill > s> accepted, anything else forbidden). > > Sounds good. Please remind me (maybe add a task in the tracker for this?). > s> It's just that the postconditions/preconditions are harder to describe > s> (ie: sometimes we want the fills to exist, sometimes not) > > The main difference between normal shapes and glyphs is really that > glyphs do not have fill or line styles defined. :) > > A glyph is just a vector information without styles. But can reference the style (0 || 1) so we need a document, ensure, handle that (not just in AGG, but in the core and in any renderer). Btw, i'm not sure gnash succeeds in hitTests with glyphs.. I wonder if the root cause is the same... (remember point_test_local in shape_character_def ?) > <ot> > However it would be great to have multi-layered glyphs with > complex fills (like normal shapes) in Flash. ;) > </ot> This is free software, nothing prevents you from doing it! :) --strk; _______________________________________________ Gnash-dev mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gnash-dev

