Line 0
Link Here
|
|
|
1 |
--- src/ui/tools/flood-tool.cpp.orig 2014-11-30 18:45:32 UTC |
2 |
+++ src/ui/tools/flood-tool.cpp |
3 |
@@ -252,13 +252,13 @@ static bool compare_pixels(guint32 check |
4 |
|
5 |
switch (method) { |
6 |
case FLOOD_CHANNELS_ALPHA: |
7 |
- return abs(static_cast<int>(ac) - ao) <= threshold; |
8 |
+ return abs(static_cast<int>(ac) - static_cast<int>(ao)) <= threshold; |
9 |
case FLOOD_CHANNELS_R: |
10 |
- return abs(static_cast<int>(ac ? unpremul_alpha(rc, ac) : 0) - (ao ? unpremul_alpha(ro, ao) : 0)) <= threshold; |
11 |
+ return abs(static_cast<int>(ac ? unpremul_alpha(rc, ac) : 0) - static_cast<int>(ao ? unpremul_alpha(ro, ao) : 0)) <= threshold; |
12 |
case FLOOD_CHANNELS_G: |
13 |
- return abs(static_cast<int>(ac ? unpremul_alpha(gc, ac) : 0) - (ao ? unpremul_alpha(go, ao) : 0)) <= threshold; |
14 |
+ return abs(static_cast<int>(ac ? unpremul_alpha(gc, ac) : 0) - static_cast<int>(ao ? unpremul_alpha(go, ao) : 0)) <= threshold; |
15 |
case FLOOD_CHANNELS_B: |
16 |
- return abs(static_cast<int>(ac ? unpremul_alpha(bc, ac) : 0) - (ao ? unpremul_alpha(bo, ao) : 0)) <= threshold; |
17 |
+ return abs(static_cast<int>(ac ? unpremul_alpha(bc, ac) : 0) - static_cast<int>(ao ? unpremul_alpha(bo, ao) : 0)) <= threshold; |
18 |
case FLOOD_CHANNELS_RGB: |
19 |
guint32 amc, rmc, bmc, gmc; |
20 |
//amc = 255*255 - (255-ac)*(255-ad); amc = (amc + 127) / 255; |
21 |
@@ -268,9 +268,9 @@ static bool compare_pixels(guint32 check |
22 |
gmc = (255-ac)*gd + 255*gc; gmc = (gmc + 127) / 255; |
23 |
bmc = (255-ac)*bd + 255*bc; bmc = (bmc + 127) / 255; |
24 |
|
25 |
- diff += abs(static_cast<int>(amc ? unpremul_alpha(rmc, amc) : 0) - (amop ? unpremul_alpha(rmop, amop) : 0)); |
26 |
- diff += abs(static_cast<int>(amc ? unpremul_alpha(gmc, amc) : 0) - (amop ? unpremul_alpha(gmop, amop) : 0)); |
27 |
- diff += abs(static_cast<int>(amc ? unpremul_alpha(bmc, amc) : 0) - (amop ? unpremul_alpha(bmop, amop) : 0)); |
28 |
+ diff += abs(static_cast<int>(amc ? unpremul_alpha(rmc, amc) : 0) - static_cast<int>(amop ? unpremul_alpha(rmop, amop) : 0)); |
29 |
+ diff += abs(static_cast<int>(amc ? unpremul_alpha(gmc, amc) : 0) - static_cast<int>(amop ? unpremul_alpha(gmop, amop) : 0)); |
30 |
+ diff += abs(static_cast<int>(amc ? unpremul_alpha(bmc, amc) : 0) - static_cast<int>(amop ? unpremul_alpha(bmop, amop) : 0)); |
31 |
return ((diff / 3) <= ((threshold * 3) / 4)); |
32 |
|
33 |
case FLOOD_CHANNELS_H: |