From: Dave B. <bla...@us...> - 2013-11-12 00:19:43
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv3828/src/org/sblim/cimclient/internal/cimxml/sax/node Modified Files: Tag: Experimental Node.java Log Message: 2706 Bad PARAMETER.REFARRAY ARRAYSIZE generates NumberFormatException Index: Node.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node/Node.java,v retrieving revision 1.1.2.16 retrieving revision 1.1.2.17 diff -u -d -r1.1.2.16 -r1.1.2.17 --- Node.java 7 Nov 2013 22:40:16 -0000 1.1.2.16 +++ Node.java 12 Nov 2013 00:19:40 -0000 1.1.2.17 @@ -27,6 +27,7 @@ * 2605 2013-03-20 buccella SAX parser throws wrong exception * 2693 2013-10-21 blaschke-oss ReturnValueNode allows invalid PARAMTYPE attribute * 2702 2013-11-07 blaschke-oss Bad PROPERTY.ARRAY ARRAYSIZE generates NumberFormatException + * 2706 2013-11-11 blaschke-oss Bad PARAMETER.REFARRAY ARRAYSIZE generates NumberFormatException */ package org.sblim.cimclient.internal.cimxml.sax.node; @@ -224,7 +225,13 @@ public static int getArraySize(Attributes pAttribs) throws SAXException { String arraySizeStr = pAttribs.getValue("ARRAYSIZE"); // 0 - unbounded size - int size = arraySizeStr == null ? 0 : Integer.parseInt(arraySizeStr); + int size = 0; + try { + size = arraySizeStr == null || arraySizeStr.length() == 0 ? 0 : Integer + .parseInt(arraySizeStr); + } catch (NumberFormatException e) { + throw new SAXException(arraySizeStr + " is not a valid ARRAYSIZE attribute!"); + } if (size < 0) throw new SAXException("ARRAYSIZE cannot be " + size + "!"); return size; } |