From 7bcdf9a22520aec4d70360a9ba7f81cf9fb0a5ff Mon Sep 17 00:00:00 2001 From: Greg Wiatroski Date: Wed, 30 Apr 2008 17:55:59 +0000 Subject: [PATCH] Robustify interval delayDelete cleanup: --- direct/src/interval/IntervalGlobal.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/direct/src/interval/IntervalGlobal.py b/direct/src/interval/IntervalGlobal.py index 6484328cf7..79e9eb1922 100644 --- a/direct/src/interval/IntervalGlobal.py +++ b/direct/src/interval/IntervalGlobal.py @@ -27,14 +27,21 @@ from pandac.PandaModules import WaitInterval def cleanupDelayDeletes(interval): if hasattr(interval, 'delayDelete'): delayDelete = interval.delayDelete - # get rid of the reference before calling destroy in case destroy causes + # get rid of all references before calling destroy in case destroy causes # this function to be called again del interval.delayDelete - delayDelete.destroy() + if type(delayDelete) == type([]): + for i in delayDelete: + i.destroy() + else: + delayDelete.destroy() if hasattr(interval, 'delayDeletes'): delayDeletes = interval.delayDeletes # get rid of the reference before calling destroy in case destroy causes # this function to be called again del interval.delayDeletes - for i in delayDeletes: - i.destroy() + if type(delayDeletes) == type([]): + for i in delayDeletes: + i.destroy() + else: + delayDeletes.destroy()