FYI -

We received many ArrayIndexOutOfBoundsException exception in the latest
release of shindig.
Specifically when proxying data served by AmazonS3, which for some reason
specify an empty Content-Type:

$ curl -I http://kaamana.s3.amazonaws.com/greetings.xml
HTTP/1.1 200 OK
x-amz-id-2: SiZq7Wq6oyEGMN8uVH4xlphTL5HTfe
DNRNhMfumN2BuJg+MluCQWx4paS6zKhHGM
x-amz-request-id: 3CD0B1F0D98DEA41
Date: Fri, 29 Jan 2010 00:31:43 GMT
Last-Modified: Sun, 20 Dec 2009 19:52:12 GMT
ETag: "f87cbe167b7410dc53c4208a9a777c67"
Content-Type:
Content-Length: 95313
Server: AmazonS3

We trace down the problem to HttpRespons line 460. Which doesn't handle
empty content type.
The problem was introduced when the standard String.split was replaced by
StringUtils.split (r892365 @ 12/18/09).
The difference is that StringUtils return an empty array, while String
return array with one element in the array of empty string.
So in the original code parts[0] was defined, but with StringUtils you get
out of bound exception.

A fix is available in http://codereview.appspot.com/196053

-Ziv

Reply via email to