[MacRuby] #849: MacRuby throws the exception of "Encoding::CompatibilityError" with various cases.

MacRuby ruby-noreply at macosforge.org
Thu Aug 12 16:54:07 PDT 2010

#849: MacRuby throws the exception of "Encoding::CompatibilityError" with various
 Reporter:  watson1978@…          |       Owner:  lsansonetti@…        
     Type:  defect                |      Status:  new                  
 Priority:  blocker               |   Milestone:                       
Component:  MacRuby               |    Keywords:                       

Comment(by lsansonetti@…):

 It seems to come from cgi/util.rb:

 (gdb) p rb_symbolicate (0x0000000102c43acf)
 addr 0x102c43acf start 0x102c43960 selector unescape: location

   # URL-decode a string with encoding(optional).
   #   string = CGI::unescape("%27Stop%21%27+said+Fred")
   #      # => "'Stop!' said Fred"
   def CGI::unescape(string,encoding=@@accept_charset)
     str=string.tr('+', ' ').gsub(/((?:%[0-9a-fA-F]{2})+)/) do
     str.valid_encoding? ? str : str.force_encoding(string.encoding)

 I suspect our pack function returns binary data by default which can't be
 concatenated to UTF-8.

Ticket URL: <http://www.macruby.org/trac/ticket/849#comment:2>
MacRuby <http://macruby.org/>

More information about the macruby-tickets mailing list