John Maguire
b9d2d3326d
Only support override in Clang.
2012-06-21 16:13:41 +02:00
John Maguire
09d37aaa01
Add OVERRIDE macro like Java's @Override.
2012-06-20 16:49:41 +02:00
Arnaud Bienner
dcc26b01ff
Correct define guard's name
2012-04-25 01:22:30 +02:00
Arnaud Bienner
01daea7090
Commit missing modifications/change ConcurrentRun description a bit
2012-04-25 00:29:19 +02:00
Arnaud Bienner
76b98000fe
Add ConcurrentRun functions, and us one of them in gstenginepipeline with gstenginepipeline's own threadpool.
...
So now we can (finally!) play/pause/stop music while fingerprinting lot of songs or whatever else
2012-04-25 00:21:01 +02:00
John Maguire
66c8d6d360
Tidy up a bit.
2012-04-13 15:53:17 +02:00
John Maguire
133c2e1640
Postpone the database check & backup to a little while after startup.
2012-04-13 15:49:56 +02:00
John Maguire
a09165c392
Make it more obviously wrong to use the Closure internals.
2012-03-20 15:14:44 +01:00
John Maguire
e4ae4b6df5
Remove poor man's static asserts.
2012-03-19 21:19:24 +01:00
John Maguire
c4d3062459
Make the SharedClosure implementation a bit less horrible.
2012-03-19 21:17:57 +01:00
David Sansome
d7a5af07fb
Copy+paste the shared pointer closure constructor a couple of times for different numbers of arguments.
2012-03-19 19:38:36 +00:00
John Maguire
e1d77e0124
Add support for QSharedPointer in Closure.
2012-03-19 19:37:57 +01:00
David Sansome
b9e08bbfe6
Update podcasts on a schedule and on demand. Update them immediately after subscribing, and make episodes appear in the tree.
2012-03-09 15:26:15 +00:00
John Maguire
5280ddf3d7
Add support for demangling symbols on Linux.
2012-02-02 15:50:42 +01:00
David Sansome
34a24971c5
Don't try to restart a worker while killing it.
2012-01-22 18:53:17 +00:00
David Sansome
694ffe42df
Don't send messages to a handler in the time between its socket closing and its process ending. Fixes a race condition that would result in a tag loading operation never completing. Fixes issue 2616
2012-01-22 18:53:17 +00:00
David Sansome
58c0f464cd
Queue messages in WorkerPool instead of in each individual handler, so the entire queue isn't lost if a worker crashes.
2012-01-22 18:53:17 +00:00
John Maguire
0212a1fa91
D'oh
2012-01-17 21:29:20 -08:00
John Maguire
4f6ee57297
Apparently <execinfo.h> doesn't exist for mingw.
2012-01-17 20:57:56 -08:00
John Maguire
ab58c72c66
ifdef DumpStackTrace() for non-Unix.
2012-01-17 20:45:33 -08:00
John Maguire
5fe7d1ad20
Add stack trace dumper (might need some tweaks for win & Linux still).
2012-01-17 20:35:10 -08:00
David Sansome
3e0f252b34
Exit worker processes when their sockets are closed, and make sure the main app closes sockets when exiting - fixes a crash dialog on Windows.
2012-01-08 16:35:01 +00:00
David Sansome
bbf99fdd0b
Change Spotify to use the new MessageHandler, remove SpotifyMessageHandler
2012-01-08 15:10:11 +00:00
David Sansome
9be641ee87
The external tagreader mostly works now:
...
* Make TagReaderClient a singleton until it's easier to pass dependencies around
* Add a WaitForSignal() that uses a local event loop to wait for a signal to be emitted
* Add a WaitForFinished() to _MessageReplyBase that blocks using a semaphore
* Add blocking versions of all TagReaderClient methods
* Use the TagReaderClient everywhere that Song::InitFromFile and friends were used before
2012-01-07 00:26:07 +00:00
David Sansome
9041117867
Move everything around in the source tree - static libraries and external binaries now go in "ext/". Add a generic worker pool.
2012-01-05 23:25:13 +00:00