rpms/librsvg2/devel filter-leak.patch, NONE, 1.1 stack-leak.patch, NONE, 1.1 librsvg2.spec, 1.63, 1.64

Matthias Clasen (mclasen) fedora-extras-commits at redhat.com
Tue Sep 11 14:26:40 UTC 2007


Author: mclasen

Update of /cvs/extras/rpms/librsvg2/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv4494

Modified Files:
	librsvg2.spec 
Added Files:
	filter-leak.patch stack-leak.patch 
Log Message:
fix memory leaks


filter-leak.patch:

--- NEW FILE filter-leak.patch ---
diff -up librsvg-2.18.2/rsvg-filter.c.filter-leak librsvg-2.18.2/rsvg-filter.c
--- librsvg-2.18.2/rsvg-filter.c.filter-leak	2007-09-11 10:03:39.000000000 -0400
+++ librsvg-2.18.2/rsvg-filter.c	2007-09-11 10:04:24.000000000 -0400
@@ -703,7 +703,6 @@ rsvg_new_filter (void)
     filter->y = _rsvg_css_parse_length ("-10%");
     filter->width = _rsvg_css_parse_length ("120%");
     filter->height = _rsvg_css_parse_length ("120%");
-    filter->super.children = g_ptr_array_new ();
     filter->super.set_atts = rsvg_filter_set_args;
     return (RsvgNode *) filter;
 }
@@ -1702,7 +1701,6 @@ rsvg_new_filter_primitive_merge (void)
     filter->super.super.free = &rsvg_filter_primitive_merge_free;
 
     filter->super.super.set_atts = rsvg_filter_primitive_merge_set_atts;
-    filter->super.super.children = g_ptr_array_new ();
     return (RsvgNode *) filter;
 }
 
@@ -2201,7 +2199,6 @@ rsvg_new_filter_primitive_component_tran
 
     filter->super.super.set_atts = rsvg_filter_primitive_component_transfer_set_atts;
 
-    filter->super.super.children = g_ptr_array_new ();
     return (RsvgNode *) filter;
 }
 
@@ -4088,7 +4085,6 @@ rsvg_new_filter_primitive_diffuse_lighti
     filter->super.render = &rsvg_filter_primitive_diffuse_lighting_render;
     filter->super.super.free = &rsvg_filter_primitive_diffuse_lighting_free;
     filter->super.super.set_atts = rsvg_filter_primitive_diffuse_lighting_set_atts;
-    filter->super.super.children = g_ptr_array_new ();
     return (RsvgNode *) filter;
 }
 
@@ -4267,7 +4263,6 @@ rsvg_new_filter_primitive_specular_light
     filter->super.render = &rsvg_filter_primitive_specular_lighting_render;
     filter->super.super.free = &rsvg_filter_primitive_specular_lighting_free;
     filter->super.super.set_atts = rsvg_filter_primitive_specular_lighting_set_atts;
-    filter->super.super.children = g_ptr_array_new ();
     return (RsvgNode *) filter;
 }
 

stack-leak.patch:

--- NEW FILE stack-leak.patch ---
diff -up librsvg-2.18.2/rsvg-cairo-draw.c.stack-leak librsvg-2.18.2/rsvg-cairo-draw.c
--- librsvg-2.18.2/rsvg-cairo-draw.c.stack-leak	2007-09-11 09:34:39.000000000 -0400
+++ librsvg-2.18.2/rsvg-cairo-draw.c	2007-09-11 09:35:03.000000000 -0400
@@ -981,7 +981,7 @@ rsvg_cairo_pop_render_stack (RsvgDrawing
         GdkPixbuf *pixbuf = render->pixbuf_stack->data;
         GdkPixbuf *bg = rsvg_compile_bg (ctx);
 
-        render->pixbuf_stack = g_list_remove_link (render->pixbuf_stack, render->pixbuf_stack);
+        render->pixbuf_stack = g_list_remove (render->pixbuf_stack, pixbuf);
 
 
         output = rsvg_filter_render (state->filter, pixbuf, bg, ctx, &render->bbox, "2103");


Index: librsvg2.spec
===================================================================
RCS file: /cvs/extras/rpms/librsvg2/devel/librsvg2.spec,v
retrieving revision 1.63
retrieving revision 1.64
diff -u -r1.63 -r1.64
--- librsvg2.spec	4 Sep 2007 03:38:15 -0000	1.63
+++ librsvg2.spec	11 Sep 2007 14:26:07 -0000	1.64
@@ -12,11 +12,13 @@
 Name: 	 librsvg2
 Summary: An SVG library based on cairo
 Version: 2.18.2
-Release: 1%{?dist}
+Release: 2%{?dist}
 
 License: 	LGPLv2+
 Group: 		System Environment/Libraries
 Source: 	http://download.gnome.org/sources/librsvg/2.18/librsvg-%{version}.tar.bz2
+Patch0:		stack-leak.patch
+Patch1:		filter-leak.patch
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)	
 Requires:	gtk2 >= %{gtk2_version}
 Requires:	libxml2 >= %{libxml2_version}
@@ -63,6 +65,8 @@
 
 %prep
 %setup -q -n librsvg-%{version}
+%patch0 -p1 -b .stack-leak
+%patch1 -p1 -b .filter-leak
 
 %build
 %configure --with-svgz \
@@ -118,6 +122,9 @@
 %doc %{_datadir}/gtk-doc/html/rsvg
 
 %changelog
+* Tue Sep 11 2007 Matthias Clasen <mclasen at redhat.com> - 2.18.2-2
+- Plug memory leaks
+
 * Mon Sep  3 2007 Matthias Clasen <mclasen at redhat.com> - 2.18.2-1
 - Update to 2.18.2
 




More information about the fedora-extras-commits mailing list