/\z/ raises ArrayIndexOutOfBoundsException in --1.9 mode
--------------------------------------------------------

                 Key: JRUBY-5761
                 URL: http://jira.codehaus.org/browse/JRUBY-5761
             Project: JRuby
          Issue Type: Bug
          Components: Ruby 1.9.2
    Affects Versions: JRuby 1.6.1
         Environment: jruby 1.6.1 (ruby-1.8.7-p330) (2011-04-12 85838f6) (Java 
HotSpot(TM) 64-Bit Server VM 1.6.0_24) [darwin-x86_64-java]
jruby 1.6.1 (ruby-1.9.2-p136) (2011-04-12 85838f6) (Java HotSpot(TM) 64-Bit 
Server VM 1.6.0_24) [darwin-x86_64-java]
LANG=en_US.UTF-8
            Reporter: Kornelius Kalnbach
            Assignee: Thomas E Enebo


It seems the \z anchor is broken in 1.9 RegExps:

> jruby-1.6.1 --1.8 -e 'p "\x80"[/\z/]'
""

> jruby-1.6.1 --1.9 -e 'p "\x80"[/\z/]'
MultiByteEncoding.java:57:in `safeLengthForUptoFour': 
java.lang.ArrayIndexOutOfBoundsException: -1
        from UTF8Encoding.java:35:in `length'
        from Matcher.java:463:in `search'
        from RubyRegexp.java:1532:in `search19'
        from RubyString.java:3542:in `subpat19'
        from RubyString.java:3451:in `op_aref19'
        from RubyString$i$op_aref19.gen:65535:in `call'
        from CachingCallSite.java:282:in `cacheAndCall'
        from CachingCallSite.java:139:in `call'
        from -e:1:in `__file__'
        from -e:-1:in `load'
        from Ruby.java:671:in `runScript'
        from Ruby.java:575:in `runNormally'
        from Ruby.java:424:in `runFromMain'
        from Main.java:278:in `doRunFromMain'
        from Main.java:198:in `internalRun'
        from Main.java:164:in `run'
        from Main.java:148:in `run'
        from Main.java:128:in `main'

It also breaks when using String#scan or StringScanner:

> jruby-1.6.1 --1.9 -e '"\xBB".scan(/\z/)'
MultiByteEncoding.java:57:in `safeLengthForUptoFour': 
java.lang.ArrayIndexOutOfBoundsException: -1
        from UTF8Encoding.java:35:in `length'
        from Matcher.java:463:in `search'
        from RubyString.java:4812:in `scanNoIter19'
        from RubyString.java:4760:in `scan19'
        from RubyString$i$1$0$scan19.gen:65535:in `call'
        from JavaMethod.java:319:in `call'
        from CachingCallSite.java:282:in `cacheAndCall'
        from CachingCallSite.java:139:in `call'
        from -e:1:in `__file__'
        from -e:-1:in `load'
        from Ruby.java:671:in `runScript'
        from Ruby.java:575:in `runNormally'
        from Ruby.java:424:in `runFromMain'
        from Main.java:278:in `doRunFromMain'
        from Main.java:198:in `internalRun'
        from Main.java:164:in `run'
        from Main.java:148:in `run'
        from Main.java:128:in `main'

> jruby-1.6.1 --1.9 -rstrscan -e 'StringScanner.new("\xBB").scan_until(/\z/)'
USASCIIEncoding.java:33:in `length': java.lang.ArrayIndexOutOfBoundsException: 
-1
        from Matcher.java:463:in `search'
        from RubyStringScanner.java:208:in `scan'
        from RubyStringScanner.java:255:in `scan_until'
        from RubyStringScanner$i$1$0$scan_until.gen:65535:in `call'
        from CachingCallSite.java:282:in `cacheAndCall'
        from CachingCallSite.java:139:in `call'
        from -e:1:in `__file__'
        from -e:-1:in `load'
        from Ruby.java:671:in `runScript'
        from Ruby.java:575:in `runNormally'
        from Ruby.java:424:in `runFromMain'
        from Main.java:278:in `doRunFromMain'
        from Main.java:198:in `internalRun'
        from Main.java:164:in `run'
        from Main.java:148:in `run'
        from Main.java:128:in `main'


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to