From 1105cf5bc00628ee6dc2d86dce1ef4225050a5ba Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Thu, 29 Oct 2020 17:51:17 +0100 Subject: [PATCH] Recheck fields when cleaning up listeners We may end up in a situation where we trigger multiple times, in which case we can end up with mutated state and therefore cannot rely on fields being non-null. JIRA: YANGTOOLS-1155 Change-Id: I5607843d1e02483faa387a5630f3c4c06a3be62a Signed-off-by: Robert Varga --- .../yang/parser/stmt/reactor/SimpleNamespaceContext.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yang/yang-parser-reactor/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/SimpleNamespaceContext.java b/yang/yang-parser-reactor/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/SimpleNamespaceContext.java index 0442329dd6..0e619a78d9 100644 --- a/yang/yang-parser-reactor/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/SimpleNamespaceContext.java +++ b/yang/yang-parser-reactor/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/SimpleNamespaceContext.java @@ -47,7 +47,7 @@ final class SimpleNamespaceContext> if (listeners != null) { notifyListeners(storage, listeners.iterator(), value); - if (listeners.isEmpty()) { + if (listeners != null && listeners.isEmpty()) { listeners = null; } } @@ -59,7 +59,7 @@ final class SimpleNamespaceContext> it.remove(); } } - if (predicateListeners.isEmpty()) { + if (predicateListeners != null && predicateListeners.isEmpty()) { predicateListeners = null; } } -- 2.36.6