diff options
author | Louise Crow <louise.crow@gmail.com> | 2013-07-25 17:14:17 +0100 |
---|---|---|
committer | Louise Crow <louise.crow@gmail.com> | 2013-07-25 17:14:17 +0100 |
commit | 1c9b3a8a4a441287cd607bb753661710f16a083a (patch) | |
tree | c7d49955979bb264e11243caa20084723351031a /app/models | |
parent | deee20780a19de705d21984ce19e8d0ecf42a701 (diff) |
Prevent erroneous internal error messages with multibyte characters under ruby 1.8 by using mb_chars for length comparison - it counts multibyte characters.
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/incoming_message.rb | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/app/models/incoming_message.rb b/app/models/incoming_message.rb index 4910d43f4..ae3c3b407 100644 --- a/app/models/incoming_message.rb +++ b/app/models/incoming_message.rb @@ -258,7 +258,7 @@ class IncomingMessage < ActiveRecord::Base # Used by binary_mask_stuff - replace text in place def _binary_mask_stuff_internal!(text) # Keep original size, so can check haven't resized it - orig_size = text.size + orig_size = text.mb_chars.size # Replace ASCII email addresses... text.gsub!(MySociety::Validate.email_find_regexp) do |email| @@ -293,7 +293,7 @@ class IncomingMessage < ActiveRecord::Base # Replace censor items self.info_request.apply_censor_rules_to_binary!(text) - raise "internal error in binary_mask_stuff" if text.size != orig_size + raise "internal error in binary_mask_stuff" if text.mb_chars.size != orig_size return text end |