From 104500a07b2a50e319b64efbf405df8d815ec90c Mon Sep 17 00:00:00 2001 From: Luca Molteni Date: Thu, 30 Nov 2023 14:41:51 +0100 Subject: [PATCH] Equality map fix --- .../org/drools/core/common/ClassAwareObjectStore.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drools-core/src/main/java/org/drools/core/common/ClassAwareObjectStore.java b/drools-core/src/main/java/org/drools/core/common/ClassAwareObjectStore.java index 19eb9b2b03d..49bac807017 100644 --- a/drools-core/src/main/java/org/drools/core/common/ClassAwareObjectStore.java +++ b/drools-core/src/main/java/org/drools/core/common/ClassAwareObjectStore.java @@ -265,7 +265,7 @@ private ConcreteClassStore getOrCreateConcreteClassStore(Class clazz) { } private ConcreteClassStore makeStoreConcrete(SingleClassStore storeToMakeConcrete) { - ConcreteClassStore store = storeToMakeConcrete.makeConcrete(); + ConcreteClassStore store = storeToMakeConcrete.makeConcrete(this.isEqualityBehaviour); Class storedClass = storeToMakeConcrete.getStoredClass(); for (SingleClassStore classStore : storesMap.values()) { @@ -296,7 +296,7 @@ public interface SingleClassStore extends Externalizable, FactHandleClassStore { Iterator factHandlesIterator(boolean assrt); boolean isConcrete(); - ConcreteClassStore makeConcrete(); + ConcreteClassStore makeConcrete(boolean isEqualityBehaviour); default Iterator iterator() { return factHandlesIterator(true); @@ -428,8 +428,8 @@ public boolean isConcrete() { } @Override - public ConcreteClassStore makeConcrete() { - identityMap = new FactHandleMap(true); + public ConcreteClassStore makeConcrete(boolean isEqualityBehaviour) { + identityMap = new FactHandleMap(!isEqualityBehaviour); return this; } }