Subject: [sup-devel] Accept ASCII_8BIT in String.check

From: Johann Klähn <[email-masked]>
Date: Thu, 25 Mar 2010 03:21:32 +0100

I was having problems with encoded emails. Using archlinux / ruby
1.9.1_p378 Iconv.iconv returns the encoding ASCII_8BIT,
which was rejected by String.check.

Before I was getting debug messages like this when converting mails or
building the index:
 couldn't transcode text from ISO-8859-1 (ISO-8859-1) to utf8) (...)
(got unexpected encoding ASCII-8BIT (String::CheckError))
My String.check now contains:
  if respond_to?(:encoding) && !(encoding == Encoding::UTF_8 ||
encoding == Encoding::ASCII || encoding == Encoding::ASCII_8BIT)
And everything is working as expected. Instead of text.ascii the real
umlauts are displayed.

Hope that helps,
Johann
_______________________________________________
Sup-devel mailing list
[email-masked]
http://rubyforge.org/mailman/listinfo/sup-devel

---

From: Rich Lane <[email-masked]>
Date: Wed, 24 Mar 2010 23:20:13 -0400

> And everything is working as expected. Instead of text.ascii the real

An ASCII_8BIT string means there's a bug in sup. Please add an assertion
so that the program exits when the encoding is ASCII_8BIT and post the
backtrace. Also, what sup version is this?
_______________________________________________
Sup-devel mailing list
[email-masked]
http://rubyforge.org/mailman/listinfo/sup-devel

---

From: Johann Klähn <[email-masked]>
Date: Thu, 25 Mar 2010 09:02:52 +0100

Ah, now it's perfectly clean to me, I guess I just shouldn't do any debugging
when I'm too tired.
The problem is that the call to Iconv.iconv(target, ..., ...) in
Iconv.easy_decode
expects target to be typed as "UTF-8", and my environment has
$encoding = "utf8".
Iconv can't handle this and thus returns ASCII_8BIT (does no real conversion).
(I'm using sup 0.11 with ruby 1.9.1_p378.)
_______________________________________________
Sup-devel mailing list
[email-masked]
http://rubyforge.org/mailman/listinfo/sup-devel