fix gifload memleak

This commit is contained in:
John Cupitt 2016-02-12 17:53:15 +00:00
parent b10f332404
commit 0dbd64a122
2 changed files with 2 additions and 9 deletions

7
TODO
View File

@ -1,12 +1,5 @@
- gif loader
there's an 88-byte leak? seems to be inside giflib
==19236== 7,974,856 (88 direct, 7,974,768 indirect) bytes in 1 blocks are definitely lost in loss record 5,195 of 5,195
==19236== at 0x4C2BBCF: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==19236== by 0x8114136: DGifOpenFileHandle (in /usr/lib/x86_64-linux-gnu/libgif.so.4.1.6)
need tests, need to update APIs

View File

@ -140,7 +140,7 @@ vips_foreign_load_gif_dispose( GObject *gobject )
{
VipsForeignLoadGif *gif = (VipsForeignLoadGif *) gobject;
VIPS_FREEF( EGifCloseFile, gif->file );
VIPS_FREEF( DGifCloseFile, gif->file );
G_OBJECT_CLASS( vips_foreign_load_gif_parent_class )->
dispose( gobject );
@ -369,7 +369,7 @@ vips_foreign_load_gif_load( VipsForeignLoad *load )
/* We've rendered to a memory image ... we can free the GIF image
* struct now.
*/
VIPS_FREEF( EGifCloseFile, gif->file );
VIPS_FREEF( DGifCloseFile, gif->file );
return( 0 );
}