librsvg r1158 - trunk
- From: doml svn gnome org
- To: svn-commits-list gnome org
- Subject: librsvg r1158 - trunk
- Date: Tue, 4 Mar 2008 16:44:18 +0000 (GMT)
Author: doml
Date: Tue Mar 4 16:44:17 2008
New Revision: 1158
URL: http://svn.gnome.org/viewvc/librsvg?rev=1158&view=rev
Log:
2008-03-04 Dominic Lachowicz <domlachowicz gmail com>
* rsvg-image.c: rsvg-convert crashed with SIGSEGV in _rsvg_acquire_xlink_href_resource()
(#520261)
Modified:
trunk/ChangeLog
trunk/configure.in
trunk/rsvg-image.c
Modified: trunk/configure.in
==============================================================================
--- trunk/configure.in (original)
+++ trunk/configure.in Tue Mar 4 16:44:17 2008
@@ -22,7 +22,7 @@
LIBRSVG_MAJOR_VERSION=2
LIBRSVG_MINOR_VERSION=22
-LIBRSVG_MICRO_VERSION=1
+LIBRSVG_MICRO_VERSION=2
AC_SUBST(LIBRSVG_MAJOR_VERSION)
AC_SUBST(LIBRSVG_MINOR_VERSION)
AC_SUBST(LIBRSVG_MICRO_VERSION)
Modified: trunk/rsvg-image.c
==============================================================================
--- trunk/rsvg-image.c (original)
+++ trunk/rsvg-image.c Tue Mar 4 16:44:17 2008
@@ -299,6 +299,17 @@
#ifdef HAVE_GIO
+static void
+rsvg_free_error (GError ** err)
+{
+ if (err) {
+ if (*err) {
+ g_error_free (*err);
+ *err = NULL;
+ }
+ }
+}
+
static GByteArray *
rsvg_acquire_vfs_resource (const char *filename, const char *base_uri, GError ** error)
{
@@ -307,7 +318,7 @@
GFile *file;
char *data;
gsize size;
- gboolean res;
+ gboolean res = FALSE;
rsvg_return_val_if_fail (filename != NULL, NULL, error);
@@ -317,19 +328,19 @@
if (base_uri != NULL) {
GFile *base;
- g_error_free (*error);
- *error = NULL;
+ rsvg_free_error(error);
+
+ g_object_unref (file);
- g_object_unref (file);
base = g_file_new_for_uri (base_uri);
file = g_file_resolve_relative_path (base, filename);
g_object_unref (base);
- res = g_file_load_contents (file, NULL, &data, &size, NULL, error);
+ res = g_file_load_contents (file, NULL, &data, &size, NULL, error);
}
}
- g_object_unref (file);
+ g_object_unref (file);
if (res) {
array = g_byte_array_new ();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]