From 62e7adb3bfe0e7ba82f0648189494ff766e82b99 Mon Sep 17 00:00:00 2001 From: Carlos Ruiz Date: Wed, 4 Feb 2015 10:57:18 -0500 Subject: [PATCH] IDEMPIERE-2449 Could not invoke Toolbar listener method: onSave - NPE on GridTab.fireDataStatusChanged --- org.adempiere.base/src/org/compiere/model/GridTab.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/org.adempiere.base/src/org/compiere/model/GridTab.java b/org.adempiere.base/src/org/compiere/model/GridTab.java index d5dbd16dcc..07c2a0c33e 100644 --- a/org.adempiere.base/src/org/compiere/model/GridTab.java +++ b/org.adempiere.base/src/org/compiere/model/GridTab.java @@ -182,7 +182,7 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable /** A list of event listeners for this component. */ protected EventListenerList m_listenerList = new EventListenerList(); /** Current Data Status Event */ - private DataStatusEvent m_DataStatusEvent = null; + private volatile DataStatusEvent m_DataStatusEvent = null; /** Query */ private MQuery m_query = new MQuery(); private String m_oldQuery = "0=9"; @@ -2346,6 +2346,10 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable */ private void fireDataStatusChanged (DataStatusEvent e) { + if (e == null) { + log.warning("IDEMPIERE-2449 - event must not arrive null here -> " + Thread.currentThread().getStackTrace()); + return; // avoid NPE below + } DataStatusListener[] listeners = m_listenerList.getListeners(DataStatusListener.class); if (listeners.length == 0) return;