diff options
author | brainpower | 2015-06-16 23:20:37 +0200 |
---|---|---|
committer | brainpower | 2015-06-16 23:20:37 +0200 |
commit | f21de6dad42954a5ebd062666259a00b701e33e0 (patch) | |
tree | 24a825ac6d3ebf677e23cb0555af363a99ddd4c3 /0002-fix_gcc_51_stumbling_over_lambda.patch | |
download | aur-f21de6dad42954a5ebd062666259a00b701e33e0.tar.gz |
create dosbox-daum with version 20150103
Diffstat (limited to '0002-fix_gcc_51_stumbling_over_lambda.patch')
-rw-r--r-- | 0002-fix_gcc_51_stumbling_over_lambda.patch | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/0002-fix_gcc_51_stumbling_over_lambda.patch b/0002-fix_gcc_51_stumbling_over_lambda.patch new file mode 100644 index 000000000000..aeaf94628817 --- /dev/null +++ b/0002-fix_gcc_51_stumbling_over_lambda.patch @@ -0,0 +1,41 @@ +--- src/gui/xBRZ/xbrz.cpp.origin 2015-06-16 01:06:32.349519739 +0200 ++++ src/gui/xBRZ/xbrz.cpp 2015-06-16 01:10:00.872799237 +0200 +@@ -661,23 +661,22 @@ + auto eq = [&](uint32_t pix1, uint32_t pix2) { return ColorDistance::dist(pix1, pix2, cfg.luminanceWeight_) < cfg.equalColorTolerance_; };
+ auto dist = [&](uint32_t pix1, uint32_t pix2) { return ColorDistance::dist(pix1, pix2, cfg.luminanceWeight_); };
+
+- const bool doLineBlend = [&]() -> bool
+- {
+- if (getBottomR(blend) >= BLEND_DOMINANT)
+- return true;
+-
+- //make sure there is no second blending in an adjacent rotation for this pixel: handles insular pixels, mario eyes
+- if (getTopR(blend) != BLEND_NONE && !eq(e, g)) //but support double-blending for 90?corners
+- return false;
+- if (getBottomL(blend) != BLEND_NONE && !eq(e, c))
+- return false;
+-
+- //no full blending for L-shapes; blend corner only (handles "mario mushroom eyes")
+- if (!eq(e, i) && eq(g, h) && eq(h , i) && eq(i, f) && eq(f, c))
+- return false;
++ bool doLineBlend;
+
+- return true;
+- }();
++ if (getBottomR(blend) >= BLEND_DOMINANT)
++ doLineBlend = true;
++
++ //make sure there is no second blending in an adjacent rotation for this pixel: handles insular pixels, mario eyes
++ else if (getTopR(blend) != BLEND_NONE && !eq(e, g)) //but support double-blending for 90?corners
++ doLineBlend = false;
++ else if (getBottomL(blend) != BLEND_NONE && !eq(e, c))
++ doLineBlend = false;
++
++ //no full blending for L-shapes; blend corner only (handles "mario mushroom eyes")
++ else if (!eq(e, i) && eq(g, h) && eq(h , i) && eq(i, f) && eq(f, c))
++ doLineBlend = false;
++ else
++ doLineBlend = true;
+
+ const uint32_t px = dist(e, f) <= dist(e, h) ? f : h; //choose most similar color
+
|