[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r116883: src/image.c: Avoid partial load of SVG libr
From: |
Juanma Barranquero |
Subject: |
[Emacs-diffs] trunk r116883: src/image.c: Avoid partial load of SVG libraries. |
Date: |
Thu, 27 Mar 2014 01:17:59 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 116883
revision-id: address@hidden
parent: address@hidden
committer: Juanma Barranquero <address@hidden>
branch nick: trunk
timestamp: Thu 2014-03-27 02:17:54 +0100
message:
src/image.c: Avoid partial load of SVG libraries.
(init_svg_functions): When loading SVG-related libraries,
free already loaded libraries if the initialization fails.
(rsvg_handle_set_size_callback): Remove declaration, unused.
modified:
src/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1438
src/image.c image.c-20091113204419-o5vbwnq5f7feedwu-2969
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2014-03-26 15:57:13 +0000
+++ b/src/ChangeLog 2014-03-27 01:17:54 +0000
@@ -1,3 +1,9 @@
+2014-03-27 Juanma Barranquero <address@hidden>
+
+ * image.c (init_svg_functions): When loading SVG-related libraries,
+ free already loaded libraries if the initialization fails.
+ (rsvg_handle_set_size_callback): Remove declaration, unused.
+
2014-03-26 Paul Eggert <address@hidden>
Fix core dump in char-equal (Bug#17011).
=== modified file 'src/image.c'
--- a/src/image.c 2014-03-26 10:21:55 +0000
+++ b/src/image.c 2014-03-27 01:17:54 +0000
@@ -8661,7 +8661,6 @@
DEF_IMGLIB_FN (gboolean, rsvg_handle_write, (RsvgHandle *, const guchar *,
gsize, GError **));
DEF_IMGLIB_FN (gboolean, rsvg_handle_close, (RsvgHandle *, GError **));
DEF_IMGLIB_FN (GdkPixbuf *, rsvg_handle_get_pixbuf, (RsvgHandle *));
-DEF_IMGLIB_FN (void *, rsvg_handle_set_size_callback, (RsvgHandle *,
RsvgSizeFunc, gpointer, GDestroyNotify));
DEF_IMGLIB_FN (int, gdk_pixbuf_get_width, (const GdkPixbuf *));
DEF_IMGLIB_FN (int, gdk_pixbuf_get_height, (const GdkPixbuf *));
@@ -8683,13 +8682,18 @@
static bool
init_svg_functions (void)
{
- HMODULE library, gdklib, glib, gobject;
+ HMODULE library, gdklib = NULL, glib = NULL, gobject = NULL;
if (!(glib = w32_delayed_load (Qglib))
|| !(gobject = w32_delayed_load (Qgobject))
|| !(gdklib = w32_delayed_load (Qgdk_pixbuf))
|| !(library = w32_delayed_load (Qsvg)))
- return 0;
+ {
+ if (gdklib) FreeLibrary (gdklib);
+ if (gobject) FreeLibrary (gobject);
+ if (glib) FreeLibrary (glib);
+ return 0;
+ }
LOAD_IMGLIB_FN (library, rsvg_handle_new);
LOAD_IMGLIB_FN (library, rsvg_handle_get_dimensions);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r116883: src/image.c: Avoid partial load of SVG libraries.,
Juanma Barranquero <=