From 5f63ef1ee35e1e2cc5a017769ed9ab0130c0502d Mon Sep 17 00:00:00 2001 From: Josh Tynjala Date: Thu, 21 Mar 2024 10:10:25 -0700 Subject: [PATCH] ObjectPool: null safety because map exists() result with null key is unspecified --- src/lime/utils/ObjectPool.hx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lime/utils/ObjectPool.hx b/src/lime/utils/ObjectPool.hx index f7e82d1c6..384b7834e 100644 --- a/src/lime/utils/ObjectPool.hx +++ b/src/lime/utils/ObjectPool.hx @@ -45,7 +45,7 @@ import haxe.ds.ObjectMap; public function add(object:T):Void { - if (!__pool.exists(object)) + if (object != null && !__pool.exists(object)) { __pool.set(object, false); clean(object); @@ -97,7 +97,7 @@ import haxe.ds.ObjectMap; public function release(object:T):Void { #if debug - if (!__pool.exists(object)) + if (object == null || !__pool.exists(object)) { Log.error("Object is not a member of the pool"); } @@ -122,7 +122,7 @@ import haxe.ds.ObjectMap; public function remove(object:T):Void { - if (__pool.exists(object)) + if (object != null && __pool.exists(object)) { __pool.remove(object);