summaryrefslogtreecommitdiff
path: root/lib/feed2imap/imap.rb
diff options
context:
space:
mode:
authorAntonio Terceiro <terceiro@debian.org>2013-08-12 16:15:32 +0200
committerAntonio Terceiro <terceiro@softwarelivre.org>2013-08-13 01:38:12 +0200
commit7f7cc8280a36c55aa1776f75f3c011e66acada06 (patch)
tree488edf4486a5a802b3fae7b13e018df5a6130217 /lib/feed2imap/imap.rb
parent576afd6ce5d0c15a9a14ad8b561793825e706239 (diff)
downloadfeed2imap-7f7cc8280a36c55aa1776f75f3c011e66acada06.tar.gz
feed2imap-7f7cc8280a36c55aa1776f75f3c011e66acada06.tar.bz2
feed2imap-7f7cc8280a36c55aa1776f75f3c011e66acada06.zip
Modernize hancling of encodings
Also, instead of converting from utf-8 to iso-8858-1, we do the other way around since we now live in a utf-8 world.
Diffstat (limited to 'lib/feed2imap/imap.rb')
-rw-r--r--lib/feed2imap/imap.rb4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/feed2imap/imap.rb b/lib/feed2imap/imap.rb
index 60775e2..4c54456 100644
--- a/lib/feed2imap/imap.rb
+++ b/lib/feed2imap/imap.rb
@@ -144,7 +144,9 @@ class ImapAccount
d = f[0].attr['INTERNALDATE']
s = f[0].attr['ENVELOPE'].subject
if s =~ /^=\?utf-8\?b\?/
- s = Base64::decode64(s.gsub(/^=\?utf-8\?b\?(.*)\?=$/, '\1')).toISO_8859_1('utf-8')
+ s = Base64::decode64(s.gsub(/^=\?utf-8\?b\?(.*)\?=$/, '\1')).force_encoding('utf-8')
+ elsif s =~ /^=\?iso-8859-1\?b\?/
+ s = Base64::decode64(s.gsub(/^=\?iso-8859-1\?b\?(.*)\?=$/, '\1')).force_encoding('iso-8859-1').encode('utf-8')
end
if dryrun
puts "To remove: #{s} (#{d})"