From 2e4e0d0c777e87ced7480d05a16ac3c8e3bfe73e Mon Sep 17 00:00:00 2001 From: srowen Date: Fri, 29 Apr 2011 08:35:13 +0000 Subject: [PATCH] Issue 820 second format info was read incorrectly git-svn-id: https://zxing.googlecode.com/svn/trunk@1751 59b500cc-1b3d-0410-9834-0bbf25fbcc57 --- .../zxing/qrcode/decoder/BitMatrixParser.java | 10 +++++----- core/test/data/blackbox/qrcode-2/34.png | Bin 0 -> 1057 bytes core/test/data/blackbox/qrcode-2/34.txt | 1 + core/test/data/blackbox/qrcode-2/35.png | Bin 0 -> 1072 bytes core/test/data/blackbox/qrcode-2/35.txt | 1 + .../zxing/qrcode/QRCodeBlackBox2TestCase.java | 8 ++++---- 6 files changed, 11 insertions(+), 9 deletions(-) create mode 100644 core/test/data/blackbox/qrcode-2/34.png create mode 100644 core/test/data/blackbox/qrcode-2/34.txt create mode 100644 core/test/data/blackbox/qrcode-2/35.png create mode 100644 core/test/data/blackbox/qrcode-2/35.txt diff --git a/core/src/com/google/zxing/qrcode/decoder/BitMatrixParser.java b/core/src/com/google/zxing/qrcode/decoder/BitMatrixParser.java index d8eaad91b..9d131a554 100644 --- a/core/src/com/google/zxing/qrcode/decoder/BitMatrixParser.java +++ b/core/src/com/google/zxing/qrcode/decoder/BitMatrixParser.java @@ -70,13 +70,13 @@ final class BitMatrixParser { // Read the top-right/bottom-left pattern too int dimension = bitMatrix.getHeight(); int formatInfoBits2 = 0; - int iMin = dimension - 8; - for (int i = dimension - 1; i >= iMin; i--) { - formatInfoBits2 = copyBit(i, 8, formatInfoBits2); - } - for (int j = dimension - 7; j < dimension; j++) { + int jMin = dimension - 7; + for (int j = dimension - 1; j >= jMin; j--) { formatInfoBits2 = copyBit(8, j, formatInfoBits2); } + for (int i = dimension - 8; i < dimension; i++) { + formatInfoBits2 = copyBit(i, 8, formatInfoBits2); + } parsedFormatInfo = FormatInformation.decodeFormatInformation(formatInfoBits1, formatInfoBits2); if (parsedFormatInfo != null) { diff --git a/core/test/data/blackbox/qrcode-2/34.png b/core/test/data/blackbox/qrcode-2/34.png new file mode 100644 index 0000000000000000000000000000000000000000..de1c45f1852a1bde9a99c7d41eed4a5becd57f5e GIT binary patch literal 1057 zcmV++1m63JP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1GY&-K~#8N?VDY4 z6G04wS?&;y05>CNf}6n+;1G!eRjGNf@Yj|`)>7>%za(1ybg#Ok+4b>q`F!wa1OgvN zWZ@+KAYd{E-3TVbWDG)JP%7>WlQ9T^L8-ViOvWGt2BqT8Fd2go7?g@TV-OjKdNy?& zM|t||@!0pDzu*0T{rq$@)|$`iC(1KAirZb+%|d(}LLln1u}t-0eKS&ujJKA*_j@z5 zi@}?8T>Fx1qr6ssk)L~O%07)qkwHMQ4M)IaaICglmXQ%j3XugO7pslxbG2V3h@iWp zt|)F98Kf}V{2Kw2G3X9C4H=QVtbZrdmnw0cT%CrDPEZ~d%VazX`73cxNk$}1gK)ho zl~a;&SEVPo$Ycy6sf-MAo|CDYOiE%Nmg@j1HB0uU23A^he{@ob_r6wDb(F8OJ zBg@n(BP2j%^Ze!0`@g>Z_;uB6wIP!dku36V6{(B7f8}Y4AUV{=GBt=8S*F(9$t#hn zypXAhOiCoTwH6{fkv++oaPH0^C^gxbj3%H-n3POKl0~M79cNIaU^TZYpTv(lgP_!8 zV=|h6CSg)Cm6>XYTo4&l<&G?dRZ|urV6|~)sEBQ}HyInjRb9(6rOEa|j$_`mb)qF^v1oX(posmJW_*#=u3~0t(nM`HmDfzgiE(GBh;6ht z85_Y>UCS~>B!w(N#D)|@&dP|NjE#B*(~M2k#6skY$V-(U zf{8nWpwwhzGMa!UVPu&iGC~5cHtLbMy2NGtlj%{d*V9xLVjKNfrZ$4Bx=zUynMQV> zS*g>Gx@=}-S;fblq29h5?M=o;a8=i3GDX@sGu5nx5osdRnhKWsdqB&Sitr$N%hVt; z#>o_sBVt2jGvYyADpfyT`UZ7?$v6QSr<5sGf-`Pm{DEX+94Dp>g^XZhYXxa4AM_4|Yjb&;O zVe&LJDEI#^6?euUN==5z7=*x}RNNURV-Ny^QgLUPj6nztO2wUFG6o?qC>3{x$ryyd bpj2J~F9x0wh_5XGG`d)_z?>ltn9I<9nOTOT0AgPut zz|$hmK5jT$eMs_hbgs ztd^T&iPK+2|JKx+ zeG>jVry(@gxUc6Gv;VhzBespjUPfUjXX#jLonNlvZ2KhgjqfpqW!rdbU(LKC8~F9Z z(sw(Itj*sqyK=jTz54VOSqJ{ruXO5Po<1RUvr|wqq%t`C<2oMEhfdX#13A{cih8%~ z3d5?sTJB3$@4TD3(z5jCZlhfj*b05v7*?KknWkB4p|r`F&)Z5#DRTAv<aZomMY3i6Vk?*Y0)Sa7r&qpnr)u5J`GE-@iQ=39kGv5ZDo{I(^ ze^PRcE zmHy+GUY-*7OuzmUQByWo#qrnf7SR5ZJX4D$ymYQo@?Qthuho-YxLU1Szkb);)xKY5 zhNw*Y^=4M|7u(L)d0wt7Puhh_`da>*WpMk%3XR(yzph2hJU=g}IBcoUUf0_v0+?_A zQwF8zwGzH=SA1PBiJatkc`A>6*LjtouZus~%;NcKkiOkqvRT4LRdQmCK%}y4;4%J> z@9$n&z-1u0zmsRv?4XYd%&{umuQo3czP+`%D0PMTL%wgz|FG7v&xvwcc0ytIT%XLz z>(q=p1piO`GimC+Qwd!>rZe8|cRP^6vrF-lv=H0Ve~*C~iD%K36r7m}HMc$G{hq#m V)vIF+2Y|Vp!PC{xWt~$(69A(i(SQH| literal 0 HcmV?d00001 diff --git a/core/test/data/blackbox/qrcode-2/35.txt b/core/test/data/blackbox/qrcode-2/35.txt new file mode 100644 index 000000000..d83e8aa31 --- /dev/null +++ b/core/test/data/blackbox/qrcode-2/35.txt @@ -0,0 +1 @@ +http://www.google.com/ \ No newline at end of file diff --git a/core/test/src/com/google/zxing/qrcode/QRCodeBlackBox2TestCase.java b/core/test/src/com/google/zxing/qrcode/QRCodeBlackBox2TestCase.java index de42d311e..8c9ebf781 100644 --- a/core/test/src/com/google/zxing/qrcode/QRCodeBlackBox2TestCase.java +++ b/core/test/src/com/google/zxing/qrcode/QRCodeBlackBox2TestCase.java @@ -27,10 +27,10 @@ public final class QRCodeBlackBox2TestCase extends AbstractBlackBoxTestCase { public QRCodeBlackBox2TestCase() { super("test/data/blackbox/qrcode-2", new MultiFormatReader(), BarcodeFormat.QR_CODE); - addTest(27, 27, 0.0f); - addTest(27, 27, 90.0f); - addTest(27, 27, 180.0f); - addTest(26, 26, 270.0f); + addTest(29, 29, 0.0f); + addTest(29, 29, 90.0f); + addTest(29, 29, 180.0f); + addTest(28, 28, 270.0f); } }