mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-05 16:20:10 +00:00
Fix a few memory leaks in the, most of them in error cases but one or two
1999-07-18 Larry Ewing <lewing@gimp.org> * src/io-xpm.c: * src/io-gif.c: * src/io-png.c: * src/io-jpeg.c: Fix a few memory leaks in the, most of them in error cases but one or two in the common case. There are probably a few small ones left.
This commit is contained in:
parent
6423183a63
commit
e0fe931832
@ -1,3 +1,12 @@
|
||||
1999-07-18 Larry Ewing <lewing@gimp.org>
|
||||
|
||||
* src/io-xpm.c:
|
||||
* src/io-gif.c:
|
||||
* src/io-png.c:
|
||||
* src/io-jpeg.c: Fix a few memory leaks in the, most of them in
|
||||
error cases but one or two in the common case. There are probably
|
||||
a few small ones left.
|
||||
|
||||
1999-07-18 Mark Crichton <crichton@gimp.org>
|
||||
|
||||
* configure.in: removed version.h.
|
||||
@ -59,4 +68,4 @@
|
||||
|
||||
1999-07-13 Mark Crichton <crichton@gimp.org>
|
||||
|
||||
* configure.in: I am a bonehead. Added gif-lib check.
|
||||
* configure.in: I am a bonehead. Added gif-lib check.
|
||||
|
@ -154,7 +154,9 @@ GdkPixBuf *image_load(FILE * f)
|
||||
tmpptr[3] = 0xFF;
|
||||
tmpptr += (is_trans ? 4 : 3);
|
||||
}
|
||||
g_free(rows[i]);
|
||||
}
|
||||
g_free(rows);
|
||||
|
||||
/* Ok, now stuff the GdkPixBuf with goodies */
|
||||
|
||||
@ -167,6 +169,7 @@ GdkPixBuf *image_load(FILE * f)
|
||||
|
||||
/* Ok, I'm anal...shoot me */
|
||||
if (!(pixbuf->art_pixbuf)) {
|
||||
art_free(pixels);
|
||||
g_free(pixbuf);
|
||||
return NULL;
|
||||
}
|
||||
@ -178,3 +181,5 @@ GdkPixBuf *image_load(FILE * f)
|
||||
}
|
||||
|
||||
image_save() {}
|
||||
|
||||
|
||||
|
@ -116,8 +116,11 @@ GdkPixBuf *image_load(FILE *f)
|
||||
/* finish off, create the pixbuf */
|
||||
pixbuf = g_new(GdkPixBuf, 1);
|
||||
pixbuf->art_pixbuf = art_pixbuf_new_rgb(pixels, w, h, (w * 3));
|
||||
if (!(pixbuf->art_pixbuf))
|
||||
if (!(pixbuf->art_pixbuf)) {
|
||||
art_free(pixels);
|
||||
g_free(pixbuf);
|
||||
return NULL;
|
||||
}
|
||||
pixbuf->ref_count = 0;
|
||||
pixbuf->unref_func = NULL;
|
||||
|
||||
|
@ -115,6 +115,7 @@ GdkPixBuf *image_load(FILE * f)
|
||||
for (n = 0; n < i; n++)
|
||||
g_free(rows[i]);
|
||||
g_free(rows);
|
||||
art_free(pixels);
|
||||
png_destroy_read_struct(&png_ptr, &info_ptr, &end_info);
|
||||
return NULL;
|
||||
}
|
||||
@ -151,8 +152,12 @@ GdkPixBuf *image_load(FILE * f)
|
||||
pixbuf->art_pixbuf = art_pixbuf_new_rgb(pixels, w, h, (w * 3));
|
||||
|
||||
/* Ok, I'm anal...shoot me */
|
||||
if (!(pixbuf->art_pixbuf))
|
||||
if (!(pixbuf->art_pixbuf)) {
|
||||
art_free(pixels);
|
||||
g_free(pixbuf);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
pixbuf->ref_count = 0;
|
||||
pixbuf->unref_func = NULL;
|
||||
|
||||
|
@ -329,6 +329,7 @@ static GdkPixBuf *
|
||||
buffer = (*get_buf) (op_cmap, handle);
|
||||
if (!buffer) {
|
||||
g_warning("Can't load XPM colormap");
|
||||
g_hash_table_destroy(color_hash);
|
||||
g_free(name_buf);
|
||||
g_free(colors);
|
||||
return NULL;
|
||||
@ -396,6 +397,9 @@ static GdkPixBuf *
|
||||
}
|
||||
}
|
||||
}
|
||||
g_hash_table_destroy(color_hash);
|
||||
g_free(colors);
|
||||
g_free(name_buf);
|
||||
|
||||
/* Ok, now stuff the GdkPixBuf with goodies */
|
||||
|
||||
@ -407,15 +411,15 @@ static GdkPixBuf *
|
||||
pixbuf->art_pixbuf = art_pixbuf_new_rgb(pixels, w, h, (w * 3));
|
||||
|
||||
/* Ok, I'm anal...shoot me */
|
||||
if (!(pixbuf->art_pixbuf))
|
||||
return NULL;
|
||||
if (!(pixbuf->art_pixbuf)) {
|
||||
art_free(pixels);
|
||||
g_free(pixbuf);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
pixbuf->ref_count = 0;
|
||||
pixbuf->unref_func = NULL;
|
||||
|
||||
g_hash_table_destroy(color_hash);
|
||||
g_free(colors);
|
||||
g_free(name_buf);
|
||||
|
||||
return pixbuf;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user