Mercurial > MadButterfly
diff src/paint.c @ 1092:e9f617b21db1
Merge from openvg branch
author | Thinker K.F. Li <thinker@codemud.net> |
---|---|
date | Fri, 03 Dec 2010 22:24:42 +0800 |
parents | cd34de1a6960 |
children | c18ad321844d |
line wrap: on
line diff
--- a/src/paint.c Thu Dec 02 08:23:08 2010 +0800 +++ b/src/paint.c Fri Dec 03 22:24:42 2010 +0800 @@ -182,6 +182,11 @@ #define RDF_DIRTY 0x1 +#define pnt_radial_clear_flags(radial, _flags) \ + do { \ + (radial)->flags &= ~(_flags); \ + } while(0) + int _paint_radial_size = sizeof(paint_radial_t); static void paint_radial_prepare(paint_t *paint, mbe_t *cr, shape_t *sh) { @@ -202,8 +207,11 @@ radial->stops, radial->n_stops); ASSERT(ptn != NULL); - mbe_pattern_destroy(radial->ptn); + if(radial->ptn) + mbe_pattern_destroy(radial->ptn); radial->ptn = ptn; + + pnt_radial_clear_flags(radial, RDF_DIRTY); } mbe_set_source(cr, radial->ptn); }