SVN 4410 crashes on my WinXP SP2, wxWidgets 2.8 Branch
Tim S
PS: Trying backgroundthread.h SVN 4181 now to see if it works OK. It seemed to fix the Crash on startup issue. Note, I only changed the one file from SVN 4410.
The patch to revert backgroundthread.h to SVN 4181 is below.
Index: src/include/backgroundthread.h
===================================================================
--- src/include/backgroundthread.h (revision 4410)
+++ src/include/backgroundthread.h (working copy)
@@ -27,18 +27,13 @@
* BackgroundThreadPool is a low overhead thread pool implementation around BackgroundThread.
*/
+
class AbstractJob
{
- friend class BackgroundThread;
-
- bool deleted;
- bool done;
-
public:
- AbstractJob() : deleted(false), done(false) {};
+ AbstractJob(){};
virtual ~AbstractJob(){};
virtual void operator()() = 0;
- void Delete() { deleted = true; if(done) delete this;};
};
@@ -155,20 +150,10 @@
break;
job = queue->Pop();
-
- if(job->deleted)
- {
- delete job;
- continue;
- }
-
(*job)();
- job->done = true;
- if(job->deleted || ownsJobs)
- {
+ if(ownsJobs)
delete job;
- }
}
return 0;
};