X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fmodules%2Fswfshape.c;h=7fca06e5c4ab64f08d6a6463e9022324d8019818;hb=50c757db52590bc2e187d2728271346b34677217;hp=3ecd8ffd46babe68567b84b4956e2896f5b31bf5;hpb=390a62127f55bf5681356b42197e9714e579fe85;p=swftools.git diff --git a/lib/modules/swfshape.c b/lib/modules/swfshape.c index 3ecd8ff..7fca06e 100644 --- a/lib/modules/swfshape.c +++ b/lib/modules/swfshape.c @@ -34,8 +34,10 @@ #define FILL_CLIPPED 0x41 void swf_ShapeFree(SHAPE * s) -{ if (s) - { if (s->linestyle.data) free(s->linestyle.data); +{ + if(!s) + return; + if (s->linestyle.data) free(s->linestyle.data); s->linestyle.data = NULL; s->linestyle.n = 0; if (s->fillstyle.data) free(s->fillstyle.data); @@ -43,16 +45,17 @@ void swf_ShapeFree(SHAPE * s) s->fillstyle.n = 0; if (s->data) free(s->data); s->data = NULL; - } - free(s); + free(s); } int swf_ShapeNew(SHAPE * * s) -{ SHAPE * sh; - if (!s) return -1; - sh = (SHAPE *)malloc(sizeof(SHAPE)); s[0] = sh; - if (sh) memset(sh,0x00,sizeof(SHAPE)); - return sh?0:-1; +{ + SHAPE * sh; + if (!s) return -1; + sh = (SHAPE *)malloc(sizeof(SHAPE)); + *s = sh; + memset(sh,0,sizeof(SHAPE)); + return 0; } int swf_GetSimpleShape(TAG * t,SHAPE * * s) // without Linestyle/Fillstyle Record @@ -169,8 +172,6 @@ int swf_SetFillStyle(TAG * t,FILLSTYLE * f) { if ((!t)||(!f)) return -1; swf_SetU8(t,f->type); - // no gradients yet! - switch (f->type) { case FILL_SOLID: if (swf_GetTagID(t)!=ST_DEFINESHAPE3) swf_SetRGB(t,&f->color);