Vine Linux バグトラッキングシステム

課題の詳細を表示 コメントにジャンプ ] 課題の履歴 ] 印刷 ]
IDプロジェクトカテゴリ登録日最終更新
0001062Vine Linux1 バグ2010-11-01 11:542012-05-23 23:38
報告者anonymous 
担当者owa 
優先度再現性不明 
状態完了解決状況不明 
バージョンVineSeed 
修正予定バージョン修正済バージョン 
概要0001062: zint QRコードに漢字を指定すると化ける
説明zint QRコードに漢字を指定すると化けるようですので、
パッチを作成してみました。
ex. zint -b 58 -d '本日は晴天なり'

zint-2.4.0-qr-kanji.patch

diff -r 7f939ac02156 zint-2.4.0/backend/qr.c
--- a/zint-2.4.0/backend/qr.c Sun Oct 31 18:59:11 2010 +0900
+++ b/zint-2.4.0/backend/qr.c Mon Nov 01 11:03:55 2010 +0900
@@ -221,14 +221,15 @@

                                /* Character representation */
                                for(i = 0; i < short_data_block_length; i++) {
- int jis = jisdata[position + i];
- int msb, lsb, prod;
-
- if(jis > 0x9fff) { jis -= 0xc140; }
- msb = (jis & 0xff00) >> 4;
+ unsigned int jis = jisdata[position + i];
+ unsigned int msb, lsb, prod;
+
+ msb = (jis & 0xff00) >> 8;
                                        lsb = (jis & 0xff);
+
+ if (msb >= 0x81 && msb <= 0x9f) { msb -= 0x81; } else if (msb >= 0xe0 && msb <= 0xea) { msb -= 0xc1; }
+ if (lsb >= 0x40 && lsb <= 0xfc) { lsb -= 0x40; }
                                        prod = (msb * 0xc0) + lsb;
-
                                        qr_bscan(binary, prod, 0x1000);

                                        if(debug) { printf("0x%4X ", prod); }
@@ -1204,14 +1205,15 @@

                                /* Character representation */
                                for(i = 0; i < short_data_block_length; i++) {
- int jis = jisdata[position + i];
- int msb, lsb, prod;
-
- if(jis > 0x9fff) { jis -= 0xc140; }
- msb = (jis & 0xff00) >> 4;
+ unsigned int jis = jisdata[position + i];
+ unsigned int msb, lsb, prod;
+
+ msb = (jis & 0xff00) >> 8;
                                        lsb = (jis & 0xff);
+
+ if (msb >= 0x81 && msb <= 0x9f) { msb -= 0x81; } else if (msb >= 0xe0 && msb <= 0xea) { msb -= 0xc1; }
+ if (lsb >= 0x40 && lsb <= 0xfc) { lsb -= 0x40; }
                                        prod = (msb * 0xc0) + lsb;
-
                                        qr_bscan(binary, prod, 0x1000);

                                        if(debug) { printf("0x%4X ", prod); }
タグ設定されていません。
arch
パッケージzint-2.4.2-1vl6.i686
添付ファイルpatch file icon zint-2.4.0-qr-kanji.patch [^] (1,465 バイト) 2010-11-06 23:58 [表示]

- 関連

-  コメント
(0000208)
owa (開発者)
2010-11-06 23:58

> zint QRコードに漢字を指定すると化けるようですので、
> パッチを作成してみました。

遅くなりました
VineSeed/TestPkg に zint-2.4.0-2 を uplaod しました
zint-2.4.0-2vl6.i686.rpm
zint-2.4.0-2vl6.src.rpm
zint-2.4.0-2vl6.x86_64.rpm
zint-devel-2.4.0-2vl6.i686.rpm
zint-devel-2.4.0-2vl6.x86_64.rpm
zint-qt-2.4.0-2vl6.i686.rpm
zint-qt-2.4.0-2vl6.x86_64.rpm
zint-qt-devel-2.4.0-2vl6.i686.rpm
zint-qt-devel-2.4.0-2vl6.x86_64.rpm

頂いたパッチを取り込んでいます
私の環境では動作確認できませんので、携帯機器とか持ってない(w;
もし改善されているようであればご報告いただけると助かります。
その場合 TestPkg から Plus への移動依頼でも構わないと思います。
(0000209)
owa (開発者)
2011-05-08 00:27

確認をお願いします
(0000210)
anonymous (参照)
2011-05-08 15:29

> 確認をお願いします

問題ないようです。
zint-2.4.2-1vl6.i686にて、確認致しました。
(0000211)
munepi (管理者)
2012-05-23 23:38

> > 確認をお願いします
>
> 問題ないようです。
> zint-2.4.2-1vl6.i686にて、確認致しました。

山本@千葉です。
確認をありがとうございます。
状態を「完了」といたします。

- 課題の履歴
変更日 ユーザー名 項目 変更内容
2010-11-01 11:54 anonymous 新規課題
2010-11-06 23:58 owa 添付ファイル追加: zint-2.4.0-qr-kanji.patch
2010-11-06 23:58 owa コメント追加: 0000208
2011-05-08 00:27 owa 担当者 => owa
2011-05-08 00:27 owa 状態 新規 => テスト待ち
2011-05-08 00:27 owa コメント追加: 0000209
2011-05-08 15:29 anonymous パッケージ zint-2.4.0-1vl6 => zint-2.4.2-1vl6.i686
2011-05-08 15:29 anonymous コメント追加: 0000210
2012-05-23 23:38 munepi 状態 テスト待ち => 完了
2012-05-23 23:38 munepi コメント追加: 0000211


Copyright © 2000 - 2024 MantisBT Team
Copyright © 2012 - 2024 Project Vine
Powered by Mantis Bugtracker