From eaa2163cb0dc425fd86de0987e7e6f3bb69e0604 Mon Sep 17 00:00:00 2001 From: David Rose Date: Mon, 23 Nov 2009 21:07:42 +0000 Subject: [PATCH] fix problem with non-unique task names --- direct/src/distributed/ConnectionRepository.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/direct/src/distributed/ConnectionRepository.py b/direct/src/distributed/ConnectionRepository.py index 7995b1a2de..a9972ab79f 100644 --- a/direct/src/distributed/ConnectionRepository.py +++ b/direct/src/distributed/ConnectionRepository.py @@ -103,6 +103,7 @@ class ConnectionRepository( self.private__di = PyDatagramIterator() self.recorder = None + self.readerPollTaskObj = None # This is the string that is appended to symbols read from the # DC file. The AIRepository will redefine this to 'AI'. @@ -577,11 +578,14 @@ class ConnectionRepository( self.stopReaderPollTask() self.accept(CConnectionRepository.getOverflowEventName(), self.handleReaderOverflow) - taskMgr.add(self.readerPollUntilEmpty, self.uniqueName("readerPollTask"), - priority = self.taskPriority, taskChain = self.taskChain) + self.readerPollTaskObj = taskMgr.add( + self.readerPollUntilEmpty, self.uniqueName("readerPollTask"), + priority = self.taskPriority, taskChain = self.taskChain) def stopReaderPollTask(self): - taskMgr.remove(self.uniqueName("readerPollTask")) + if self.readerPollTaskObj: + taskMgr.remove(self.readerPollTaskObj) + self.readerPollTaskObj = None self.ignore(CConnectionRepository.getOverflowEventName()) def readerPollUntilEmpty(self, task):