From 1d985fcfa462134f7c2cf4a7a89a5a8e12da5b7c Mon Sep 17 00:00:00 2001 From: Jonathan Marshall Date: Fri, 4 Jan 2013 09:25:34 +1300 Subject: [PATCH] don't allow a job with id 0 (will be used for invalid job id) --- xbmc/utils/JobManager.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/xbmc/utils/JobManager.cpp b/xbmc/utils/JobManager.cpp index bebf80bea987a..d3b3be1cda642 100644 --- a/xbmc/utils/JobManager.cpp +++ b/xbmc/utils/JobManager.cpp @@ -203,8 +203,13 @@ unsigned int CJobManager::AddJob(CJob *job, IJobCallback *callback, CJob::PRIORI { CSingleLock lock(m_section); + // increment the job counter, ensuring 0 (invalid job) is never hit + m_jobCounter++; + if (m_jobCounter == 0) + m_jobCounter++; + // create a work item for this job - CWorkItem work(job, m_jobCounter++, callback); + CWorkItem work(job, m_jobCounter, callback); m_jobQueue[priority].push_back(work); StartWorkers(priority);