From f9e867c23e25eccc187c295824a0096b9d823fcfcba11c59808b5614a8611e87 Mon Sep 17 00:00:00 2001 From: OBS User mrdocs Date: Tue, 8 Aug 2017 03:04:31 +0000 Subject: [PATCH 1/4] Accepting request 515105 from home:mrdocs:branches:graphics update to 0.92.2 OBS-URL: https://build.opensuse.org/request/show/515105 OBS-URL: https://build.opensuse.org/package/show/graphics/inkscape?expand=0&rev=17 --- inkscape-0.92.1.tar.bz2 | 3 --- inkscape-0.92.2.tar.bz2 | 3 +++ inkscape.changes | 9 +++++++++ inkscape.spec | 7 +++---- 4 files changed, 15 insertions(+), 7 deletions(-) delete mode 100644 inkscape-0.92.1.tar.bz2 create mode 100644 inkscape-0.92.2.tar.bz2 diff --git a/inkscape-0.92.1.tar.bz2 b/inkscape-0.92.1.tar.bz2 deleted file mode 100644 index cc337b3..0000000 --- a/inkscape-0.92.1.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:257405bf802de125f17d123638093a37db02ebe334d243cf9b0d8903f7c89005 -size 31222684 diff --git a/inkscape-0.92.2.tar.bz2 b/inkscape-0.92.2.tar.bz2 new file mode 100644 index 0000000..90bc41b --- /dev/null +++ b/inkscape-0.92.2.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a628d0e04c254e9840947e6d866974f92c68ae31631a38b94d9b65e5cd84cfd3 +size 31224100 diff --git a/inkscape.changes b/inkscape.changes index a1c77ad..55a9205 100644 --- a/inkscape.changes +++ b/inkscape.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Mon Aug 7 23:08:09 UTC 2017 - plinnell@opensuse.org + +- Update to version 0.92.2: + + Stability and bug fix release. Several crash bugs fixed. + + No change log, changes here: + https://launchpad.net/inkscape/+milestone/0.92.2 + + ------------------------------------------------------------------- Wed May 17 17:25:43 UTC 2017 - dimstar@opensuse.org diff --git a/inkscape.spec b/inkscape.spec index 138c8e8..939933a 100644 --- a/inkscape.spec +++ b/inkscape.spec @@ -17,7 +17,7 @@ Name: inkscape -Version: 0.92.1 +Version: 0.92.2 Release: 0 Summary: Vector Illustration Program License: GPL-2.0 and LGPL-2.1 @@ -29,8 +29,7 @@ Source1: openSUSE.gpl Source2: inkscape-split-extensions-extra.sh # PATCH-FIX-OPENSUSE inkscape-packages.patch sbrabec@suse.cz -- Suggest packages instead of compilation from source. Patch0: inkscape-packages.patch -# PATCH-FIX-UPSTREAM inkscape-gcc7-buildfix.patch lp#1660992 dimstar@opensuse.org -- Fix C++11 errors and warnings with g++-7 -Patch1: inkscape-gcc7-buildfix.patch + BuildRequires: aspell-devel BuildRequires: autoconf BuildRequires: automake @@ -166,7 +165,7 @@ Inkscape is a vector illustration program for the GNOME desktop. %prep %setup -q %patch0 -p1 -%patch1 -p0 + %build ./autogen.sh From e9103e5bc9d4022dc9784dfa6294577703eaea98df1c9d4f7c5abe434778cece Mon Sep 17 00:00:00 2001 From: OBS User mrdocs Date: Sun, 13 Aug 2017 01:06:49 +0000 Subject: [PATCH 2/4] Accepting request 516086 from home:pgajdos:remove-aspell - do not require aspell, require gtkspell [bsc#1052953] OBS-URL: https://build.opensuse.org/request/show/516086 OBS-URL: https://build.opensuse.org/package/show/graphics/inkscape?expand=0&rev=18 --- inkscape.changes | 5 +++++ inkscape.spec | 3 +-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/inkscape.changes b/inkscape.changes index 55a9205..627dec7 100644 --- a/inkscape.changes +++ b/inkscape.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Fri Aug 11 09:44:53 UTC 2017 - pgajdos@suse.com + +- do not require aspell, require gtkspell [bsc#1052953] + ------------------------------------------------------------------- Mon Aug 7 23:08:09 UTC 2017 - plinnell@opensuse.org diff --git a/inkscape.spec b/inkscape.spec index 939933a..1c61e72 100644 --- a/inkscape.spec +++ b/inkscape.spec @@ -30,9 +30,9 @@ Source2: inkscape-split-extensions-extra.sh # PATCH-FIX-OPENSUSE inkscape-packages.patch sbrabec@suse.cz -- Suggest packages instead of compilation from source. Patch0: inkscape-packages.patch -BuildRequires: aspell-devel BuildRequires: autoconf BuildRequires: automake +BuildRequires: gtkspell-devel %if 0%{?suse_version} > 1325 BuildRequires: libboost_headers-devel %else @@ -166,7 +166,6 @@ Inkscape is a vector illustration program for the GNOME desktop. %setup -q %patch0 -p1 - %build ./autogen.sh RPM_OPT_FLAGS="%{optflags}" From c68c8ce6e0417fbdc003d05f319d466cebd6b6e58b13cfef1df3b77010a8997e Mon Sep 17 00:00:00 2001 From: OBS User mrdocs Date: Fri, 18 Aug 2017 00:19:23 +0000 Subject: [PATCH 3/4] OBS-URL: https://build.opensuse.org/package/show/graphics/inkscape?expand=0&rev=19 --- inkscape.changes | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/inkscape.changes b/inkscape.changes index 627dec7..87b9041 100644 --- a/inkscape.changes +++ b/inkscape.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Fri Aug 18 00:19:00 UTC 2017 - plinnell@opensuse.org + +- drop inkscape-gcc7-buildfix.patch + ------------------------------------------------------------------- Fri Aug 11 09:44:53 UTC 2017 - pgajdos@suse.com From d1ccaf6991ca5932b6425b83b3b90d0c888bf21eae92708a3dba9af380cbe2d3 Mon Sep 17 00:00:00 2001 From: OBS User mrdocs Date: Fri, 18 Aug 2017 00:19:34 +0000 Subject: [PATCH 4/4] OBS-URL: https://build.opensuse.org/package/show/graphics/inkscape?expand=0&rev=20 --- inkscape-gcc7-buildfix.patch | 815 ----------------------------------- 1 file changed, 815 deletions(-) delete mode 100644 inkscape-gcc7-buildfix.patch diff --git a/inkscape-gcc7-buildfix.patch b/inkscape-gcc7-buildfix.patch deleted file mode 100644 index 5349f9b..0000000 --- a/inkscape-gcc7-buildfix.patch +++ /dev/null @@ -1,815 +0,0 @@ -=== modified file 'src/box3d.cpp' -Index: src/box3d.cpp -=================================================================== ---- src/box3d.cpp.orig -+++ src/box3d.cpp -@@ -15,12 +15,14 @@ - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -+#include "box3d.h" -+ - #include - #include "attributes.h" - #include "xml/document.h" - #include "xml/repr.h" - --#include "box3d.h" -+#include "bad-uri-exception.h" - #include "box3d-side.h" - #include "ui/tools/box3d-tool.h" - #include "proj_pt.h" -Index: src/filters/image.cpp -=================================================================== ---- src/filters/image.cpp.orig -+++ src/filters/image.cpp -@@ -14,14 +14,17 @@ - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -+#include "image.h" -+ - #include -+ -+#include "bad-uri-exception.h" - #include "display/nr-filter-image.h" - #include "uri.h" - #include "uri-references.h" - #include "enums.h" - #include "attributes.h" - #include "svg/svg.h" --#include "image.h" - #include "xml/repr.h" - #include - -Index: src/inkgc/gc-core.h -=================================================================== ---- src/inkgc/gc-core.h.orig -+++ src/inkgc/gc-core.h -@@ -18,7 +18,7 @@ - - #include - #include --#include -+ - #ifdef HAVE_GC_GC_H - # include - #else -@@ -137,7 +137,6 @@ inline void *operator new(std::size_t si - Inkscape::GC::CollectionPolicy collect, - Inkscape::GC::CleanupFunc cleanup=NULL, - void *data=NULL) --throw(std::bad_alloc) - { - using namespace Inkscape::GC; - -@@ -168,7 +167,6 @@ inline void *operator new(std::size_t si - Inkscape::GC::ScanPolicy scan, - Inkscape::GC::CleanupFunc cleanup=NULL, - void *data=NULL) --throw(std::bad_alloc) - { - return operator new(size, scan, Inkscape::GC::AUTO, cleanup, data); - } -@@ -178,7 +176,6 @@ inline void *operator new[](std::size_t - Inkscape::GC::CollectionPolicy collect, - Inkscape::GC::CleanupFunc cleanup=NULL, - void *data=NULL) --throw(std::bad_alloc) - { - return operator new(size, scan, collect, cleanup, data); - } -@@ -187,7 +184,6 @@ inline void *operator new[](std::size_t - Inkscape::GC::ScanPolicy scan, - Inkscape::GC::CleanupFunc cleanup=NULL, - void *data=NULL) --throw(std::bad_alloc) - { - return operator new[](size, scan, Inkscape::GC::AUTO, cleanup, data); - } -Index: src/inkgc/gc-managed.h -=================================================================== ---- src/inkgc/gc-managed.h.orig -+++ src/inkgc/gc-managed.h -@@ -30,7 +30,6 @@ public: - void *operator new(std::size_t size, - ScanPolicy scan=default_scan, - CollectionPolicy collect=default_collect) -- throw (std::bad_alloc) - { - return ::operator new(size, scan, collect); - } -@@ -38,7 +37,6 @@ public: - void *operator new[](std::size_t size, - ScanPolicy scan=default_scan, - CollectionPolicy collect=default_collect) -- throw (std::bad_alloc) - { - return ::operator new[](size, scan, collect); - } -Index: src/inkgc/gc.cpp -=================================================================== ---- src/inkgc/gc.cpp.orig -+++ src/inkgc/gc.cpp -@@ -173,7 +173,7 @@ public: - {} - }; - --Ops const &get_ops() throw (InvalidGCModeError) { -+Ops const &get_ops() { - char *mode_string=std::getenv("_INKSCAPE_GC"); - if (mode_string) { - if (!std::strcmp(mode_string, "enable")) { -Index: src/live_effects/lpeobject-reference.cpp -=================================================================== ---- src/live_effects/lpeobject-reference.cpp.orig -+++ src/live_effects/lpeobject-reference.cpp -@@ -6,10 +6,12 @@ - * Released under GNU GPL, read the file 'COPYING' for more information. - */ - -+#include "live_effects/lpeobject-reference.h" -+ - #include - - #include "enums.h" --#include "live_effects/lpeobject-reference.h" -+#include "bad-uri-exception.h" - #include "live_effects/lpeobject.h" - #include "uri.h" - -Index: src/live_effects/parameter/path.cpp -=================================================================== ---- src/live_effects/parameter/path.cpp.orig -+++ src/live_effects/parameter/path.cpp -@@ -5,10 +5,16 @@ - * Released under GNU GPL, read the file 'COPYING' for more information - */ - --#include "ui/widget/point.h" -+#include "live_effects/parameter/path.h" -+ - #include - --#include "live_effects/parameter/path.h" -+#include -+#include -+ -+#include "bad-uri-exception.h" -+#include "ui/widget/point.h" -+ - #include "live_effects/effect.h" - #include "svg/svg.h" - #include <2geom/svg-path-parser.h> -@@ -17,7 +23,6 @@ - #include <2geom/d2.h> - - #include "widgets/icon.h" --#include - #include "selection-chemistry.h" - #include "xml/repr.h" - #include "desktop.h" -@@ -44,8 +49,6 @@ - #include "ui/tool/multi-path-manipulator.h" - #include "ui/tool/shape-record.h" - --#include --#include - #include "ui/icon-names.h" - - namespace Inkscape { -Index: src/sp-conn-end.cpp -=================================================================== ---- src/sp-conn-end.cpp.orig -+++ src/sp-conn-end.cpp -@@ -1,11 +1,12 @@ -+#include "sp-conn-end.h" - - #include - #include - #include - -+#include "bad-uri-exception.h" - #include "display/curve.h" - #include "xml/repr.h" --#include "sp-conn-end.h" - #include "sp-path.h" - #include "uri.h" - #include "document.h" -Index: src/sp-filter.cpp -=================================================================== ---- src/sp-filter.cpp.orig -+++ src/sp-filter.cpp -@@ -17,16 +17,17 @@ - # include "config.h" - #endif - -+#include "sp-filter.h" -+ - #include - #include --using std::map; --using std::pair; - - #include -+ -+#include "bad-uri-exception.h" - #include "attributes.h" - #include "display/nr-filter.h" - #include "document.h" --#include "sp-filter.h" - #include "sp-filter-reference.h" - #include "sp-filter-primitive.h" - #include "sp-item.h" -@@ -35,6 +36,9 @@ using std::pair; - #include - #include - -+using std::map; -+using std::pair; -+ - #define SP_MACROS_SILENT - #include "macros.h" - -Index: src/sp-gradient.cpp -=================================================================== ---- src/sp-gradient.cpp.orig -+++ src/sp-gradient.cpp -@@ -24,6 +24,8 @@ - #define noSP_GRADIENT_VERBOSE - //#define OBJECT_TRACE - -+#include "bad-uri-exception.h" -+ - #include - #include - -Index: src/sp-hatch.cpp -=================================================================== ---- src/sp-hatch.cpp.orig -+++ src/sp-hatch.cpp -@@ -12,11 +12,14 @@ - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -+ - #include - #include -+ - #include <2geom/transforms.h> - #include - -+#include "bad-uri-exception.h" - #include "svg/svg.h" - #include "display/cairo-utils.h" - #include "display/drawing-context.h" -Index: src/sp-item.cpp -=================================================================== ---- src/sp-item.cpp.orig -+++ src/sp-item.cpp -@@ -17,6 +17,10 @@ - #endif - - #include "sp-item.h" -+ -+#include -+ -+#include "bad-uri-exception.h" - #include "svg/svg.h" - #include "print.h" - #include "display/drawing-item.h" -@@ -25,10 +29,7 @@ - #include "uri.h" - #include "inkscape.h" - #include "desktop.h" -- -- - #include "style.h" --#include - #include "sp-root.h" - #include "sp-clippath.h" - #include "sp-mask.h" -Index: src/sp-lpe-item.cpp -=================================================================== ---- src/sp-lpe-item.cpp.orig -+++ src/sp-lpe-item.cpp -@@ -16,10 +16,11 @@ - # include "config.h" - #endif - --#include "ui/tool/multi-path-manipulator.h" -- - #include - -+#include "bad-uri-exception.h" -+#include "ui/tool/multi-path-manipulator.h" -+ - #include "live_effects/effect.h" - #include "live_effects/lpe-path_length.h" - #include "live_effects/lpeobject.h" -Index: src/sp-offset.cpp -=================================================================== ---- src/sp-offset.cpp.orig -+++ src/sp-offset.cpp -@@ -18,13 +18,17 @@ - # include "config.h" - #endif - -+#include "sp-offset.h" -+ - #include - #include - -+#include -+ -+#include "bad-uri-exception.h" - #include "svg/svg.h" - #include "attributes.h" - #include "display/curve.h" --#include - - #include "livarot/Path.h" - #include "livarot/Shape.h" -@@ -32,7 +36,6 @@ - #include "enums.h" - #include "preferences.h" - #include "sp-text.h" --#include "sp-offset.h" - #include "sp-use-reference.h" - #include "uri.h" - -Index: src/sp-pattern.cpp -=================================================================== ---- src/sp-pattern.cpp.orig -+++ src/sp-pattern.cpp -@@ -16,12 +16,15 @@ - #include "config.h" - #endif - -+#include "sp-pattern.h" -+ - #include - #include - #include - #include <2geom/transforms.h> - #include - -+#include "bad-uri-exception.h" - #include "svg/svg.h" - #include "display/cairo-utils.h" - #include "display/drawing-context.h" -@@ -32,7 +35,6 @@ - #include "document-private.h" - #include "uri.h" - #include "style.h" --#include "sp-pattern.h" - #include "xml/repr.h" - - #include "sp-factory.h" -Index: src/sp-tag-use-reference.cpp -=================================================================== ---- src/sp-tag-use-reference.cpp.orig -+++ src/sp-tag-use-reference.cpp -@@ -6,13 +6,15 @@ - * Released under GNU GPL, read the file 'COPYING' for more information. - */ - -+#include "sp-tag-use-reference.h" -+ - #include - #include - #include - - #include "enums.h" --#include "sp-tag-use-reference.h" - -+#include "bad-uri-exception.h" - #include "display/curve.h" - #include "livarot/Path.h" - #include "preferences.h" -Index: src/sp-tag-use.cpp -=================================================================== ---- src/sp-tag-use.cpp.orig -+++ src/sp-tag-use.cpp -@@ -10,10 +10,14 @@ - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -+#include "sp-tag-use.h" -+ - #include - #include - - #include -+ -+#include "bad-uri-exception.h" - #include "display/drawing-group.h" - #include "attributes.h" - #include "document.h" -@@ -23,7 +27,6 @@ - #include "style.h" - #include "sp-factory.h" - #include "sp-symbol.h" --#include "sp-tag-use.h" - #include "sp-tag-use-reference.h" - - SPTagUse::SPTagUse() -Index: src/sp-tag-use.h -=================================================================== ---- src/sp-tag-use.h.orig -+++ src/sp-tag-use.h -@@ -22,6 +22,7 @@ - #define SP_TAG_USE(obj) (dynamic_cast (obj)) - #define SP_IS_TAG_USE(obj) (dynamic_cast (obj) != NULL) - -+class SPItem; - class SPTagUse; - class SPTagUseReference; - -Index: src/sp-tref.cpp -=================================================================== ---- src/sp-tref.cpp.orig -+++ src/sp-tref.cpp -@@ -16,14 +16,16 @@ - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -+#include "sp-tref.h" -+ - #include - -+#include "bad-uri-exception.h" - #include "attributes.h" - #include "document.h" - #include "sp-factory.h" - #include "sp-text.h" - #include "sp-tspan.h" --#include "sp-tref.h" - #include "style.h" - #include "text-editing.h" - #include "uri.h" -Index: src/sp-use-reference.cpp -=================================================================== ---- src/sp-use-reference.cpp.orig -+++ src/sp-use-reference.cpp -@@ -7,12 +7,14 @@ - * Released under GNU GPL, read the file 'COPYING' for more information. - */ - -+#include "sp-use-reference.h" -+ - #include - #include - #include - -+#include "bad-uri-exception.h" - #include "enums.h" --#include "sp-use-reference.h" - - #include "display/curve.h" - #include "livarot/Path.h" -Index: src/sp-use.cpp -=================================================================== ---- src/sp-use.cpp.orig -+++ src/sp-use.cpp -@@ -19,6 +19,8 @@ - #include <2geom/transforms.h> - #include - #include -+ -+#include "bad-uri-exception.h" - #include "display/drawing-group.h" - #include "attributes.h" - #include "document.h" -Index: src/style-internal.cpp -=================================================================== ---- src/style-internal.cpp.orig -+++ src/style-internal.cpp -@@ -28,6 +28,8 @@ - - #include "style-internal.h" - #include "style-enums.h" -+#include -+#include "bad-uri-exception.h" - #include "style.h" - - #include "svg/svg.h" -@@ -45,8 +47,6 @@ - #include - #include - --#include -- - // TODO REMOVE OR MAKE MEMBER FUNCTIONS - void sp_style_fill_paint_server_ref_changed( SPObject *old_ref, SPObject *ref, SPStyle *style); - void sp_style_stroke_paint_server_ref_changed(SPObject *old_ref, SPObject *ref, SPStyle *style); -Index: src/style.cpp -=================================================================== ---- src/style.cpp.orig -+++ src/style.cpp -@@ -23,10 +23,15 @@ - # include "config.h" - #endif - -+#include "style.h" -+ - #include - #include - #include - -+#include -+ -+#include "bad-uri-exception.h" - #include "libcroco/cr-sel-eng.h" - #include "xml/croco-node-iface.h" - -@@ -43,7 +48,6 @@ - #include "sp-paint-server.h" - #include "streq.h" - #include "strneq.h" --#include "style.h" - #include "svg/css-ostringstream.h" - #include "xml/repr.h" - #include "xml/simple-document.h" -@@ -58,8 +62,6 @@ - - #include <2geom/math-utils.h> - --#include -- - using Inkscape::CSSOStringStream; - using std::vector; - -Index: src/trace/trace.h -=================================================================== ---- src/trace/trace.h.orig -+++ src/trace/trace.h -@@ -13,10 +13,6 @@ - # include "config.h" - #endif - --#ifdef HAVE_STDLIB_H --# include --#endif -- - #ifdef HAVE_STRING_H - # include - #endif -Index: src/ui/tools/flood-tool.cpp -=================================================================== ---- src/ui/tools/flood-tool.cpp.orig -+++ src/ui/tools/flood-tool.cpp -@@ -21,6 +21,7 @@ - #include "config.h" - #endif - -+#include - #include "trace/potrace/inkscape-potrace.h" - #include <2geom/pathvector.h> - #include -@@ -196,6 +197,21 @@ inline unsigned char * get_trace_pixel(g - } - - /** -+ * \brief Check whether two unsigned integers are close to each other -+ * -+ * \param[in] a The 1st unsigned int -+ * \param[in] b The 2nd unsigned int -+ * \param[in] d The threshold for comparison -+ * -+ * \return true if |a-b| <= d; false otherwise -+ */ -+static bool compare_guint32(guint32 const a, guint32 const b, guint32 const d) -+{ -+ const int difference = std::abs(static_cast(a) - static_cast(b)); -+ return difference <= d; -+} -+ -+/** - * Compare a pixel in a pixel buffer with another pixel to determine if a point should be included in the fill operation. - * @param check The pixel in the pixel buffer to check. - * @param orig The original selected pixel to use as the fill target color. -@@ -206,7 +222,6 @@ inline unsigned char * get_trace_pixel(g - */ - static bool compare_pixels(guint32 check, guint32 orig, guint32 merged_orig_pixel, guint32 dtc, int threshold, PaintBucketChannels method) - { -- int diff = 0; - float hsl_check[3] = {0,0,0}, hsl_orig[3] = {0,0,0}; - - guint32 ac = 0, rc = 0, gc = 0, bc = 0; -@@ -232,27 +247,35 @@ static bool compare_pixels(guint32 check - - switch (method) { - case FLOOD_CHANNELS_ALPHA: -- return abs(static_cast(ac) - ao) <= threshold; -+ return compare_guint32(ac, ao, threshold); - case FLOOD_CHANNELS_R: -- return abs(static_cast(ac ? unpremul_alpha(rc, ac) : 0) - (ao ? unpremul_alpha(ro, ao) : 0)) <= threshold; -+ return compare_guint32(ac ? unpremul_alpha(rc, ac) : 0, -+ ao ? unpremul_alpha(ro, ao) : 0, -+ threshold); - case FLOOD_CHANNELS_G: -- return abs(static_cast(ac ? unpremul_alpha(gc, ac) : 0) - (ao ? unpremul_alpha(go, ao) : 0)) <= threshold; -+ return compare_guint32(ac ? unpremul_alpha(gc, ac) : 0, -+ ao ? unpremul_alpha(go, ao) : 0, -+ threshold); - case FLOOD_CHANNELS_B: -- return abs(static_cast(ac ? unpremul_alpha(bc, ac) : 0) - (ao ? unpremul_alpha(bo, ao) : 0)) <= threshold; -+ return compare_guint32(ac ? unpremul_alpha(bc, ac) : 0, -+ ao ? unpremul_alpha(bo, ao) : 0, -+ threshold); - case FLOOD_CHANNELS_RGB: -- guint32 amc, rmc, bmc, gmc; -- //amc = 255*255 - (255-ac)*(255-ad); amc = (amc + 127) / 255; -- //amc = (255-ac)*ad + 255*ac; amc = (amc + 127) / 255; -- amc = 255; // Why are we looking at desktop? Cairo version ignores destop alpha -- rmc = (255-ac)*rd + 255*rc; rmc = (rmc + 127) / 255; -- gmc = (255-ac)*gd + 255*gc; gmc = (gmc + 127) / 255; -- bmc = (255-ac)*bd + 255*bc; bmc = (bmc + 127) / 255; -- -- diff += abs(static_cast(amc ? unpremul_alpha(rmc, amc) : 0) - (amop ? unpremul_alpha(rmop, amop) : 0)); -- diff += abs(static_cast(amc ? unpremul_alpha(gmc, amc) : 0) - (amop ? unpremul_alpha(gmop, amop) : 0)); -- diff += abs(static_cast(amc ? unpremul_alpha(bmc, amc) : 0) - (amop ? unpremul_alpha(bmop, amop) : 0)); -- return ((diff / 3) <= ((threshold * 3) / 4)); -- -+ { -+ guint32 amc, rmc, bmc, gmc; -+ //amc = 255*255 - (255-ac)*(255-ad); amc = (amc + 127) / 255; -+ //amc = (255-ac)*ad + 255*ac; amc = (amc + 127) / 255; -+ amc = 255; // Why are we looking at desktop? Cairo version ignores destop alpha -+ rmc = (255-ac)*rd + 255*rc; rmc = (rmc + 127) / 255; -+ gmc = (255-ac)*gd + 255*gc; gmc = (gmc + 127) / 255; -+ bmc = (255-ac)*bd + 255*bc; bmc = (bmc + 127) / 255; -+ -+ int diff = 0; // The total difference between each of the 3 color components -+ diff += std::abs(static_cast(amc ? unpremul_alpha(rmc, amc) : 0) - static_cast(amop ? unpremul_alpha(rmop, amop) : 0)); -+ diff += std::abs(static_cast(amc ? unpremul_alpha(gmc, amc) : 0) - static_cast(amop ? unpremul_alpha(gmop, amop) : 0)); -+ diff += std::abs(static_cast(amc ? unpremul_alpha(bmc, amc) : 0) - static_cast(amop ? unpremul_alpha(bmop, amop) : 0)); -+ return ((diff / 3) <= ((threshold * 3) / 4)); -+ } - case FLOOD_CHANNELS_H: - return ((int)(fabs(hsl_check[0] - hsl_orig[0]) * 100.0) <= threshold); - case FLOOD_CHANNELS_S: -Index: src/uri-references.cpp -=================================================================== ---- src/uri-references.cpp.orig -+++ src/uri-references.cpp -@@ -11,17 +11,20 @@ - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -+#include "uri-references.h" -+ - #include - #include - #include - -+#include -+ -+#include "bad-uri-exception.h" - #include "document.h" - #include "sp-object.h" - #include "uri.h" --#include "uri-references.h" - #include "extract-uri.h" - #include "sp-tag-use.h" --#include - #include - - namespace Inkscape { -@@ -104,7 +107,7 @@ bool URIReference::_acceptObject(SPObjec - - - --void URIReference::attach(const URI &uri) throw(BadURIException) -+void URIReference::attach(const URI &uri) - { - SPDocument *document = NULL; - -Index: src/uri-references.h -=================================================================== ---- src/uri-references.h.orig -+++ src/uri-references.h -@@ -20,7 +20,6 @@ - #include - #include - --#include "bad-uri-exception.h" - #include "sp-object.h" - #include "sp-item.h" - #include "sp-use.h" -@@ -66,7 +65,7 @@ public: - * @param rel_document document for relative URIs - * @param uri the URI to watch - */ -- void attach(URI const& uri) throw(BadURIException); -+ void attach(URI const& uri); - - /** - * Detaches from the currently attached URI target, if any; -Index: src/uri.cpp -=================================================================== ---- src/uri.cpp.orig -+++ src/uri.cpp -@@ -8,12 +8,14 @@ - * Released under GNU GPL, read the file 'COPYING' for more information - */ - --#include - #include "uri.h" -+ - #include - #include - #include - -+#include "bad-uri-exception.h" -+ - namespace Inkscape { - - URI::URI() { -@@ -26,7 +28,7 @@ URI::URI(const URI &uri) { - _impl = uri._impl; - } - --URI::URI(gchar const *preformed) throw(BadURIException) { -+URI::URI(gchar const *preformed) { - xmlURIPtr uri; - if (!preformed) { - throw MalformedURIException(); -@@ -133,7 +135,7 @@ const gchar *URI::Impl::getOpaque() cons - return (gchar *)_uri->opaque; - } - --gchar *URI::to_native_filename(gchar const* uri) throw(BadURIException) -+gchar *URI::to_native_filename(gchar const* uri) - { - gchar *filename = NULL; - URI tmp(uri); -@@ -167,7 +169,7 @@ const std::string URI::getFullPath(std:: - - - /* TODO !!! proper error handling */ --gchar *URI::toNativeFilename() const throw(BadURIException) { -+gchar *URI::toNativeFilename() const { - gchar *uriString = toString(); - if (isRelativePath()) { - return uriString; -@@ -182,7 +184,7 @@ gchar *URI::toNativeFilename() const thr - } - } - --URI URI::fromUtf8( gchar const* path ) throw (BadURIException) { -+URI URI::fromUtf8( gchar const* path ) { - if ( !path ) { - throw MalformedURIException(); - } -@@ -216,7 +218,7 @@ URI URI::fromUtf8( gchar const* path ) t - } - - /* TODO !!! proper error handling */ --URI URI::from_native_filename(gchar const *path) throw(BadURIException) { -+URI URI::from_native_filename(gchar const *path) { - gchar *uri = g_filename_to_uri(path, NULL, NULL); - URI result(uri); - g_free( uri ); -Index: src/uri.h -=================================================================== ---- src/uri.h.orig -+++ src/uri.h -@@ -13,7 +13,6 @@ - - #include - #include --#include "bad-uri-exception.h" - #include - - namespace Inkscape { -@@ -37,7 +36,7 @@ public: - * - * @param preformed Properly quoted C-style string to be represented. - */ -- explicit URI(char const *preformed) throw(BadURIException); -+ explicit URI(char const *preformed); - - /** - * Destructor. -@@ -98,15 +97,15 @@ public: - - const char *getOpaque() const { return _impl->getOpaque(); } - -- static URI fromUtf8( char const* path ) throw (BadURIException); -+ static URI fromUtf8( char const* path ); - -- static URI from_native_filename(char const *path) throw(BadURIException); -+ static URI from_native_filename(char const *path); - -- static char *to_native_filename(char const* uri) throw(BadURIException); -+ static char *to_native_filename(char const* uri); - - const std::string getFullPath(std::string const &base) const; - -- char *toNativeFilename() const throw(BadURIException); -+ char *toNativeFilename() const; - - /** - * Returns a glib string version of this URI.