[mew-dist 29477] Re: cmew sometimes stores id as blob
Tatsuya Kinoshita
tats at example.com
2012年 3月 27日 (火) 01:29:39 JST
On March 26, 2012, [mew-dist 29476],
kazu (at iij.ad.jp) wrote:
> cmew の mail_header では、改行は取り除かれていることは確かめました。
> 不思議ですね。うーむ。
l.splitでvalueが空だと、Ruby 1.9.xではvalue.encodingがASCII-8BIT
になり、sqlite3でtextではなくblobとして扱われてしまうようです。
もっとよい書き方がありそうですが、とりあえず下記のパッチのように
空文字列を再代入すれば直ります。
----
--- a/bin/cmew
+++ b/bin/cmew
@@ -30,7 +30,7 @@ def mail_header(path)
break if /^$/ =~ l
if /^\s+/ !~ l
(name, value) = l.split(/:\s*/, 2)
- value = '' if value.nil?
+ value = '' if value.nil? || value.empty?
@header[name.downcase] = value
else
value << $'
----
--
木下達也
Mew-dist メーリングリストの案内