diff --git a/py25/bacpypes/task.py b/py25/bacpypes/task.py index 14adde4..f2eab6e 100755 --- a/py25/bacpypes/task.py +++ b/py25/bacpypes/task.py @@ -74,7 +74,11 @@ class _Task(DebugContents, Logging): def suspend_task(self): global _task_manager - _task_manager.suspend_task(self) + # pass along to the task manager + if not _task_manager: + _unscheduled_tasks.remove(self) + else: + _task_manager.suspend_task(self) def resume_task(self): global _task_manager diff --git a/py27/bacpypes/task.py b/py27/bacpypes/task.py index c212c83..73760eb 100755 --- a/py27/bacpypes/task.py +++ b/py27/bacpypes/task.py @@ -74,7 +74,11 @@ class _Task(DebugContents, Logging): def suspend_task(self): global _task_manager - _task_manager.suspend_task(self) + # pass along to the task manager + if not _task_manager: + _unscheduled_tasks.remove(self) + else: + _task_manager.suspend_task(self) def resume_task(self): global _task_manager diff --git a/py34/bacpypes/task.py b/py34/bacpypes/task.py index c212c83..73760eb 100755 --- a/py34/bacpypes/task.py +++ b/py34/bacpypes/task.py @@ -74,7 +74,11 @@ class _Task(DebugContents, Logging): def suspend_task(self): global _task_manager - _task_manager.suspend_task(self) + # pass along to the task manager + if not _task_manager: + _unscheduled_tasks.remove(self) + else: + _task_manager.suspend_task(self) def resume_task(self): global _task_manager