On Thu, Jan 05, 2012 at 06:12:36PM -0600, Bruce Dubbs wrote:
> According to https://bugzilla.gnome.org/show_bug.cgi?id=155472#c4 
> libart_lgpl is no longer being maintained.  The Trinity guys have taken 
> it and made some corrections.
> 
> A look at the book shows libart_lgpl is also used by libgnomeprint and 
> libgnomecanvas.  Is this use still relevant?  Should I pull this library 
> down to a KDE section?
> 
>    -- Bruce

 Libgnomeprint is defunct.  Libgnomecanvas is one of the packages
I'll be moving to the deprecated/legacy area of gnome.  Do you have
a link to the trinity version ?  I can see it's in git at
http://scm.trinitydesktop.org/scm/git/libart-lgpl but I can't see
any way of looking at the details, let alone extracting a snapshot.

 Presumably, their fixes will be similar to the attached patch (found
at debian) ?  If so, we could just patch it.

ĸen
-- 
das eine Mal als Tragödie, das andere Mal als Farce
Origin: other, http://bugzilla.gnome.org/155472#c1
Bug-Gnome: http://bugzilla.gnome.org/155472
Bug-Debian: http://bugs.debian.org/271111
Bug-Trinity:http://bugs.pearsoncomputing.net/554
Forwarded: http://bugzilla.gnome.org/155472#c1
Author: Brian J. Tarricone <[email protected]>
Applied-Upstream: no
Description: Removes assert() statements that makes applications crash.
 Several applications (Xfce Desktop, Trinity Desktop, gok...) have been reported
 to crash when trying to render SVG files, because of asserts in the
 'art_render_gradient_linear_render_8' function, in file art_render_gradient.c.
 Now unmaintained by upstream (see http://bugzilla.gnome.org/155472#c4)
--- libart-lgpl.orig/art_render_gradient.c.orig 2004-10-15 00:41:51.444732640 
-0700
+++ libart-lgpl/art_render_gradient.c   2004-10-15 00:45:47.125903656 -0700
@@ -30,7 +30,9 @@
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
+#if 0
 #include <assert.h>
+#endif
 
 /* Hack to find out how to define alloca on different platforms.
  * Modified version of glib/galloca.h.
@@ -203,7 +205,9 @@
     }
 
   printf ("WARNING! bad ix %d in calc_color_at() [internal error]\n", ix);
+#if 0
   assert (0);
+#endif
 }
 
 static void
@@ -331,6 +335,7 @@
   printf ("Initial ix: %d\n", ix);
 #endif
   
+#if 0
   assert (ix > 0);
   assert (ix < n_stops);
   assert ((stops[ix-1].offset <= offset_fraction + EPSILON) ||
@@ -344,6 +349,17 @@
   assert ((offset_fraction != stops[ix].offset) ||
          (d_offset <= 0.0));
   */
+#else
+  if (!( (ix > 0) && (ix < n_stops)
+         && ((stops[ix-1].offset <= offset_fraction + EPSILON) ||
+             ((stops[ix].offset > (1.0 - EPSILON))
+              && (offset_fraction < EPSILON /* == 0.0*/)))
+         && (offset_fraction <= stops[ix].offset)))
+  {
+    printf ("art_render_gradient.c:%d: Old assert() failed!\n", __LINE__);
+    return;
+  }
+#endif
   
   while (width > 0)
     {
-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to