summarylogtreecommitdiffstats
path: root/inkscape-0.92.1-gcc7-1.patch
diff options
context:
space:
mode:
Diffstat (limited to 'inkscape-0.92.1-gcc7-1.patch')
-rw-r--r--inkscape-0.92.1-gcc7-1.patch77
1 files changed, 0 insertions, 77 deletions
diff --git a/inkscape-0.92.1-gcc7-1.patch b/inkscape-0.92.1-gcc7-1.patch
deleted file mode 100644
index 455727d00229..000000000000
--- a/inkscape-0.92.1-gcc7-1.patch
+++ /dev/null
@@ -1,77 +0,0 @@
---- inkscape-0.92.1/src/ui/tools/flood-tool.cpp.orig 2017-05-16 20:45:31.374672304 +0100
-+++ inkscape-0.92.1/src/ui/tools/flood-tool.cpp 2017-05-16 21:35:01.564359096 +0100
-@@ -196,6 +196,21 @@
- }
-
- /**
-+ * \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<int>(a) - static_cast<int>(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.
-@@ -232,27 +247,35 @@
-
- switch (method) {
- case FLOOD_CHANNELS_ALPHA:
-- return abs(static_cast<int>(ac) - ao) <= threshold;
-+ return compare_guint32(ac, ao, threshold);
- case FLOOD_CHANNELS_R:
-- return abs(static_cast<int>(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<int>(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<int>(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<int>(amc ? unpremul_alpha(rmc, amc) : 0) - (amop ? unpremul_alpha(rmop, amop) : 0));
-- diff += abs(static_cast<int>(amc ? unpremul_alpha(gmc, amc) : 0) - (amop ? unpremul_alpha(gmop, amop) : 0));
-- diff += abs(static_cast<int>(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<int>(amc ? unpremul_alpha(rmc, amc) : 0) - static_cast<int>(amop ? unpremul_alpha(rmop, amop) : 0));
-+ diff += std::abs(static_cast<int>(amc ? unpremul_alpha(gmc, amc) : 0) - static_cast<int>(amop ? unpremul_alpha(gmop, amop) : 0));
-+ diff += std::abs(static_cast<int>(amc ? unpremul_alpha(bmc, amc) : 0) - static_cast<int>(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: