summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChong Yidong <cyd@stupidchicken.com>2005-11-18 03:57:36 +0000
committerChong Yidong <cyd@stupidchicken.com>2005-11-18 03:57:36 +0000
commitfe45ad152a8528e795c3d852bf3c2cd18ffe6e02 (patch)
treeac898cb128886dfbab663c08ad44282702c374eb
parent05338727a874606f2daa6e4d78fe871586aeffde (diff)
downloademacs-fe45ad152a8528e795c3d852bf3c2cd18ffe6e02.tar.gz
* image.c (x_create_bitmap_from_xpm_data): Free attributes on
fail.
-rw-r--r--src/ChangeLog3
-rw-r--r--src/image.c6
2 files changed, 7 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 078164c5fb9..1a9fd720167 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,8 @@
2005-11-17 Chong Yidong <cyd@stupidchicken.com>
+ * image.c (x_create_bitmap_from_xpm_data): Free attributes on
+ fail.
+
* xfaces.c (Qignore_defface): New variable.
(syms_of_xfaces): Provide `:ignore-defface'.
(IGNORE_DEFFACE_P): New macro.
diff --git a/src/image.c b/src/image.c
index 1ba1cd197ff..c7bc71ee909 100644
--- a/src/image.c
+++ b/src/image.c
@@ -3737,10 +3737,12 @@ x_create_bitmap_from_xpm_data (f, bits)
rc = XpmCreatePixmapFromData (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
bits, &bitmap, &mask, &attrs);
if (rc != XpmSuccess)
- return -1;
+ {
+ XpmFreeAttributes (&attrs);
+ return -1;
+ }
id = x_allocate_bitmap_record (f);
-
dpyinfo->bitmaps[id - 1].pixmap = bitmap;
dpyinfo->bitmaps[id - 1].have_mask = 1;
dpyinfo->bitmaps[id - 1].mask = mask;