Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ArrayIndexOutOfBoundsException in android's KXmlParser

I am doing regular XML parsing on android, and very rarely I get this exception and only on particular phones. Haven't been able to get to the root of this issue. Does anybody have an idea what might be causing this?

    java.lang.ArrayIndexOutOfBoundsException: src.length=8192 srcPos=1 dst.length=8192 dstPos=0 length=-1
    at java.lang.System.arraycopy(Native Method)
    at org.kxml2.io.KXmlParser.fillBuffer(KXmlParser.java:1489)
    at org.kxml2.io.KXmlParser.skip(KXmlParser.java:1574)
    at org.kxml2.io.KXmlParser.parseStartTag(KXmlParser.java:1049)
    at org.kxml2.io.KXmlParser.next(KXmlParser.java:369)
    at org.kxml2.io.KXmlParser.next(KXmlParser.java:310)
like image 957
isneesh Avatar asked Aug 15 '12 09:08

isneesh


Video Answer


1 Answers

I have a similar exception. In my case, the xml had been downloaded and saved to the SD. When I opened the file, I saw that it cut out "mid-sentence", as it were. It looked like there had been an error in downloading the file. Deleting the file and re-downloading fixed the issue in this instance, but to prevent future issues of the same type, I check for ArrayIndexOutOfBoundsException when reading an xml, and assume the file is corrupt when it catches one.

It's obviously just a bandaid solution to a vaguely defined problem at the moment. If I figure more out, I'll update my answer.

like image 127
AlbeyAmakiir Avatar answered Sep 27 '22 20:09

AlbeyAmakiir