From c4eed17a2e806dae0d2580f68e273b53c5bad9cd Mon Sep 17 00:00:00 2001 From: inmarket Date: Sat, 26 Aug 2017 09:39:59 +1000 Subject: Fix a problem with gwinImage where an animated GIF can leave a running timer when it is destroyed. --- src/gwin/gwin_image.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/gwin/gwin_image.c b/src/gwin/gwin_image.c index 900e7f61..b1da7d52 100644 --- a/src/gwin/gwin_image.c +++ b/src/gwin/gwin_image.c @@ -19,6 +19,10 @@ #define gw ((GImageObject *)gh) static void ImageDestroy(GWindowObject *gh) { + // Stop the timer + #if GWIN_NEED_IMAGE_ANIMATION + gtimerStop(&gobj->timer); + #endif if (gdispImageIsOpen(&gw->image)) gdispImageClose(&gw->image); } @@ -129,7 +133,7 @@ GHandle gwinGImageCreate(GDisplay *g, GImageObject *gobj, GWindowInit *pInit) { #if GWIN_NEED_IMAGE_ANIMATION gtimerInit(&gobj->timer); #endif - + gwinSetVisible((GHandle)gobj, pInit->show); return (GHandle)gobj; -- cgit v1.2.3