commit af6e2e3e0542553a9bac06e76201613237ef4e0a
parent 7baf2ae82255b4ca77a1e2a4b46831371f92cfce
Author: William Morgan <wmorgan-sup@masanjin.net>
Date: Thu, 19 Jun 2008 11:08:50 -0700
Merge branch 'non-ascii-message-id'
Diffstat:
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/lib/sup/message.rb b/lib/sup/message.rb
@@ -148,7 +148,18 @@ class Message
@source.fn_for_offset @source_info
end
- def sanitize_message_id mid; mid.gsub(/\s+/, "")[0..254] end
+ ## sanitize message ids by removing spaces and non-ascii characters.
+ ## also, truncate to 255 characters. all these steps are necessary
+ ## to make ferret happy. of course, we probably fuck up a couple
+ ## valid message ids as well. as long as we're consistent, this
+ ## should be fine, though.
+ ##
+ ## also, mostly the message ids that are changed by this belong to
+ ## spam email.
+ ##
+ ## an alternative would be to SHA1 or MD5 all message ids on a regular basis.
+ ## don't tempt me.
+ def sanitize_message_id mid; mid.gsub(/(\s|[^\000-\177])+/, "")[0..254] end
def save index
return unless @dirty