Просмотр исходного кода

NodeManager: Make `delete()` more robust. (#33160)

Michael Herzog 2 месяцев назад
Родитель
Сommit
1e7e3cff30
1 измененных файлов с 8 добавлено и 3 удалено
  1. 8 3
      src/renderers/common/nodes/NodeManager.js

+ 8 - 3
src/renderers/common/nodes/NodeManager.js

@@ -414,11 +414,16 @@ class NodeManager extends DataMap {
 		if ( object.isRenderObject ) {
 
 			const nodeBuilderState = this.get( object ).nodeBuilderState;
-			nodeBuilderState.usedTimes --;
 
-			if ( nodeBuilderState.usedTimes === 0 ) {
+			if ( nodeBuilderState !== undefined ) {
 
-				this.nodeBuilderCache.delete( this.getForRenderCacheKey( object ) );
+				nodeBuilderState.usedTimes --;
+
+				if ( nodeBuilderState.usedTimes === 0 ) {
+
+					this.nodeBuilderCache.delete( this.getForRenderCacheKey( object ) );
+
+				}
 
 			}
 

粤ICP备19079148号