[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[palm-unix-j:00233] Re: 文字化け



三浦です

原因がわかり、現在動作試験中です。
原因というのは、以前のバージョンとちがって、
データのPDBへの書き込みを同期時や終了時に行うのではなく、
4つのアプリケーションそれぞれにおこなっていることです。

現状や以前のバージョンでは、同期や終了のときにコード変換をしているので、
現在は、予定表などがデータを取り扱うときにEUCで書き込まれた
PDBファイルを、SJISとして扱っているようになっているために、
問題が発生していました。

Juddも、ソース中に「文字コード変換をここでやってもいいのかなぁ」と
コメントしていました。
# だったら、直せよ─>Judd :-(

ということで、文字コードの変換EUC->SJISを行うポイントを変更すると
ともに、一部のtypoを2つ直しました。

また、文字コード変換部分がだんだん修正が面倒になってきたので、
Macro化しています。

さらに、日本語の文字コード変換ルーチンの最適化を行った関係で、
#渡されてくるバッファサイズは正しいという前提で、ちょっとだけ
#手を抜いている...
変換ルーチンは、バッファのサイズにとても敏感になっています。

ところが、コール側ではバッファサイズが無いにも関わらず、
適当なサイズで呼び出している個所があり、そのためメモリ
リークが発生していました。

日本語文字コード変換ルーチンでのチェックを厳しくするとともに、
呼び出し側も直しました。

パッチは別途.

-- 
Hiroshi Miura  --- miura@da-cha.org http://www.da-cha.org/ 
CCNA, Oracle Silver Master, Network Specialist(JITEC)