Author: tfennelly
Date: 2011-06-20 11:53:34 -0400 (Mon, 20 Jun 2011)
New Revision: 32217
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.core/src/org/jboss/tools/smooks/core/SmooksSAXXMLHandler.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/AbstractSmooksFormEditor.java
Log:
JBIDE-8917: NPE when validating transform_XML2XML_date_manipulation project example
https://issues.jboss.org/browse/JBIDE-8917
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.core/src/org/jboss/tools/smooks/core/SmooksSAXXMLHandler.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.core/src/org/jboss/tools/smooks/core/SmooksSAXXMLHandler.java 2011-06-20
15:15:30 UTC (rev 32216)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.core/src/org/jboss/tools/smooks/core/SmooksSAXXMLHandler.java 2011-06-20
15:53:34 UTC (rev 32217)
@@ -129,7 +129,7 @@
@Override
public void comment(char[] ch, int start, int length) {
String comment = new String(ch, start, length);
- Object obj = objects.get(objects.size() - 1);
+ Object obj = getObject(objects.size() - 1);
if (mixedTargets.peek() != null) {
if (text != null) {
@@ -158,6 +158,24 @@
}
+ /**
+ * @return
+ */
+ private Object getObject(int index) {
+ if(index < 0 || index >= objects.size()) {
+ return null;
+ }
+
+ // Need to perform the following check on the underlying objects.data[], before calling
objects.get(),
+ // otherwise BasicEList throws a wobbler...
+ Object[] data = objects.data();
+ if(data == null || data[index] == null) {
+ return null;
+ }
+
+ return objects.get(index);
+ }
+
/*
* (non-Javadoc)
*
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/AbstractSmooksFormEditor.java
===================================================================
---
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/AbstractSmooksFormEditor.java 2011-06-20
15:15:30 UTC (rev 32216)
+++
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/AbstractSmooksFormEditor.java 2011-06-20
15:53:34 UTC (rev 32217)
@@ -671,7 +671,7 @@
try {
smooksResource.load(Collections.emptyMap());
smooksModel = smooksResource.getContents().get(0);
- } catch (IOException e) {
+ } catch (Exception e) {
initSmooksModelException = e;
}
} else {