diff --git a/Foundation/include/Poco/TaskNotification.h b/Foundation/include/Poco/TaskNotification.h index f8f6841ab..beaddd7a0 100644 --- a/Foundation/include/Poco/TaskNotification.h +++ b/Foundation/include/Poco/TaskNotification.h @@ -102,7 +102,7 @@ private: class Foundation_API TaskProgressNotification: public TaskNotification /// This notification is posted by the TaskManager for - /// every task that has failed with an exception. + /// a task when its progress changes. { public: TaskProgressNotification(Task* pTask, float progress); diff --git a/Foundation/src/Task.cpp b/Foundation/src/Task.cpp index d5732f28b..afd896dcf 100644 --- a/Foundation/src/Task.cpp +++ b/Foundation/src/Task.cpp @@ -95,9 +95,12 @@ void Task::setProgress(float taskProgress) { FastMutex::ScopedLock lock(_mutex); - _progress = taskProgress; - if (_pOwner) - _pOwner->taskProgress(this, _progress); + if (_progress != taskProgress) + { + _progress = taskProgress; + if (_pOwner) + _pOwner->taskProgress(this, _progress); + } }