X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;ds=sidebyside;f=cpp%2Fcore%2Fsrc%2Fzxing%2Fcommon%2FHybridBinarizer.cpp;fp=cpp%2Fcore%2Fsrc%2Fzxing%2Fcommon%2FHybridBinarizer.cpp;h=7fdb6642df3ed105f43d9252b4733fadb9c9718e;hb=eb5befec9d93a5968bb0785f3c684a8fb33dd3c7;hp=65d03ee89074cae16c6f11c796b1c49940e635cf;hpb=a6543856baf892b2d7162a99511fae5eaa1cacfa;p=zxing.git diff --git a/cpp/core/src/zxing/common/HybridBinarizer.cpp b/cpp/core/src/zxing/common/HybridBinarizer.cpp index 65d03ee8..7fdb6642 100644 --- a/cpp/core/src/zxing/common/HybridBinarizer.cpp +++ b/cpp/core/src/zxing/common/HybridBinarizer.cpp @@ -129,7 +129,12 @@ int* HybridBinarizer::calculateBlackPoints(unsigned char* luminances, int subWid // If the contrast is inadequate, use half the minimum, so that this block will be // treated as part of the white background, but won't drag down neighboring blocks // too much. - int average = (max - min > 24) ? (sum >> 6) : (min >> 1); + int average; + if (max - min > 24) { + average = (sum >> 6); + } else { + average = max == 0 ? 1 : (min >> 1); + } blackPoints[y * subWidth + x] = average; } }