Bug Tracker

Modify

Ticket #10288 (closed bug: invalid)

Opened 21 months ago

Last modified 15 months ago

1.6.4 minified has high order bytes causing IE 8 crash when not sent UTF-8

Reported by: plockc@… Owned by: plockc@…
Priority: high Milestone: None
Component: misc Version: 1.6.4rc1
Keywords: Cc:
Blocking: Blocked by:

Description

If you serve 1.6.4 under lighttpd for instance, which does not set a charset (default will be ISO-8859-1), it will crash IE8.

Pulling same library from google, which sets UTF-8, it does not crash

There is a space character that is not 7 bit ascii starting at character # 15119

(I know there is a better way to do this, but it works) hexdump -v -e '1/1 "%02X" "\n"' jquery-1.6.4.min.js | awk '/[8-9A-F]/ {print NR " " $0} /[0-7]?/ {}'

search for j.test("

Fix: Use the non-minified version, or you can yui minify the unminified version and it will not have the 8 bit characters

Change History

comment:1 Changed 20 months ago by dmethvin

  • Owner set to plockc@…
  • Status changed from new to pending

Are you using lighty's ModCompress? If so disable it and see if the problem is still there.

 http://redmine.lighttpd.net/wiki/1/Docs:ModCompress

comment:2 Changed 20 months ago by anonymous

It's commented out:

# "mod_compress",

I'm curious from the response if you disagree about the existence of the 2 8-bit bytes, or if the high bytes are intended, or if you are asserting that it shouldn't matter?

To be a little more explicit, Here are two versions of jquery and the test I ran (Mac OSX):


curl -o jquery-1.6.4.min.js  http://code.jquery.com/jquery-1.6.4.min.js hexdump -v -e '1/1 "%02X" "\n"' jquery-1.6.4.min.js | awk '/[8-9A-F]/ {print NR " " $0} /[0-7]?/ {}'

The output shows any bytes in the range 80-FF (hex): 15119 C2 15120 A0


curl -o jquery-1.6.4.js  http://code.jquery.com/jquery-1.6.4.js hexdump -v -e '1/1 "%02X" "\n"' jquery-1.6.4.js | awk '/[8-9A-F]/ {print NR " " $0} /[0-7]?/ {}' (no output, it's clean)


I also checked  http://code.jquery.com/jquery.min.js and it has 8 bit bytes

For more detail on the lighttpd, environment has already been modified (outside my control), so I can't show the crash state anymore, but this should be the matching set of response headers I just pulled from a different environment for jquery-1.6.4.min.js:

Accept-Ranges:bytes Content-Length:72174 Content-Type:text/javascript Date:Fri, 16 Sep 2011 15:55:39 GMT ETag:"-1556017200" Last-Modified:Mon, 07 Jun 2010 22:52:02 GMT Server:NENlighttpd

thanks -c

comment:3 Changed 20 months ago by plockc@…

  • Status changed from pending to new

oops, I didn't use wiki formatting and posted anonymously instead of with my addy, the code should instead be:

hexdump -v -e '1/1 "%02X" "\n"' jquery-1.6.4.min.js \
  | awk '/^[8-9A-F]/ {print NR " " $0} /[0-7]?/ {}'

I don't think I can edit my earlier comment to fix

comment:4 Changed 20 months ago by rwaldron

  • Priority changed from undecided to high
  • Status changed from new to open
  • Component changed from unfiled to misc

comment:5 Changed 15 months ago by dmethvin

  • Status changed from open to closed
  • Resolution set to invalid

This problem could not be confirmed and has not been reported in recent versions.

Please follow the  bug reporting guidlines and use  jsFiddle when providing test cases and demonstrations instead of pasting the code in the ticket.

View

Add a comment

Modify Ticket

Action
as closed
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.