Hello community,

here is the log from the commit of package cairo for openSUSE:Factory checked 
in at 2014-05-05 21:14:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cairo (Old)
 and      /work/SRC/openSUSE:Factory/.cairo.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cairo"

Changes:
--------
--- /work/SRC/openSUSE:Factory/cairo/cairo.changes      2013-09-04 
14:07:59.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.cairo.new/cairo.changes 2014-05-05 
21:14:24.000000000 +0200
@@ -1,0 +2,7 @@
+Fri Apr 11 12:55:12 UTC 2014 - [email protected]
+
+- Add cairo-render-thin-lines.patch: Fix rendering of thin lines,
+  so that inkscape can export 0.01mm lines again to PDF. Regression
+  introduced with 1.12.3.
+
+-------------------------------------------------------------------

New:
----
  cairo-render-thin-lines.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ cairo.spec ++++++
--- /var/tmp/diff_new_pack.BwTnb9/_old  2014-05-05 21:14:26.000000000 +0200
+++ /var/tmp/diff_new_pack.BwTnb9/_new  2014-05-05 21:14:26.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package cairo
 #
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -32,6 +32,8 @@
 Patch0:         cairo-modules-no-version.patch
 # PATCH-FIX-OPENSUSE cairo-disable-lto.patch [email protected] -- Disable -flto 
on s390{x}
 Patch1:         cairo-disable-lto.patch
+# PATCH-FIX-UPSTREAM cairo-render-thin-lines.patch fdo#77298 [email protected] -- 
Fix rendering of thin lines
+Patch2:         cairo-render-thin-lines.patch
 # These libraries are needed only for tests.
 # Do not enable tests in build systems, it causes build loop!
 #BuildRequires:  librsvg-devel poppler-devel
@@ -153,6 +155,8 @@
 %ifarch s390 s390x
 %patch1 -p1
 %endif
+# fix_for_fdo77298.patch
+%patch2 -p1
 
 %build
 # Needed by patch0 and patch1

++++++ cairo-render-thin-lines.patch ++++++
diff --git a/src/cairo-pen.c b/src/cairo-pen.c
index 61be0e8..8eed775 100644
--- a/src/cairo-pen.c
+++ b/src/cairo-pen.c
@@ -284,7 +284,20 @@ _cairo_pen_vertices_needed (double     tolerance,
                                                                     radius);
     int num_vertices;
 
-    if (tolerance >= 4*major_axis) { /* XXX relaxed from 2*major for inkscape 
*/
+    if (tolerance >= 100*major_axis) { /* XXX relaxed from 2*major for 
inkscape */
+       /*
+         * When we decide for num_vertices = 1, the object is not drawn.
+        * To avoid https://bugs.freedesktop.org/show_bug.cgi?id=77298
+        * we use 100*major -- this just helps us to the 0.001mm line width.
+        *
+        * The author of the 'XXX relaxed' comment above, originally used 
4*major,
+        * which is not sufficient for my inkscape lasercutter usecase.
+        *
+        * Please double check if num_vertices == 1 should never be done (for 
PDF).
+        *
+        * [email protected]
+        */
+       // fprintf(stderr, "tolerance=%g major_axis=%g -> num_vertices = 1\n", 
tolerance, major_axis);
        num_vertices = 1;
     } else if (tolerance >= major_axis) {
        num_vertices = 4;
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to