fix gifload memleak
This commit is contained in:
parent
b10f332404
commit
0dbd64a122
7
TODO
7
TODO
|
@ -1,12 +1,5 @@
|
||||||
- gif loader
|
- 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
|
need tests, need to update APIs
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -140,7 +140,7 @@ vips_foreign_load_gif_dispose( GObject *gobject )
|
||||||
{
|
{
|
||||||
VipsForeignLoadGif *gif = (VipsForeignLoadGif *) gobject;
|
VipsForeignLoadGif *gif = (VipsForeignLoadGif *) gobject;
|
||||||
|
|
||||||
VIPS_FREEF( EGifCloseFile, gif->file );
|
VIPS_FREEF( DGifCloseFile, gif->file );
|
||||||
|
|
||||||
G_OBJECT_CLASS( vips_foreign_load_gif_parent_class )->
|
G_OBJECT_CLASS( vips_foreign_load_gif_parent_class )->
|
||||||
dispose( gobject );
|
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
|
/* We've rendered to a memory image ... we can free the GIF image
|
||||||
* struct now.
|
* struct now.
|
||||||
*/
|
*/
|
||||||
VIPS_FREEF( EGifCloseFile, gif->file );
|
VIPS_FREEF( DGifCloseFile, gif->file );
|
||||||
|
|
||||||
return( 0 );
|
return( 0 );
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue