Commit Graph

178 Commits

Author SHA1 Message Date
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
Arnaud Bienner fbda1f9489 Add a debug message when TagLib can't read a file 2012-04-25 00:10:40 +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
David Sansome 1c80cfbadb Use libspotify 11.1.56 2012-03-27 22:01:37 +01: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
David Sansome b53578c490 Don't reset a song's rating back to 0 if it was edited in the EditTagDialog 2012-03-04 13:36:22 +00:00
John Maguire 5280ddf3d7 Add support for demangling symbols on Linux. 2012-02-02 15:50:42 +01:00
David Sansome f213813e71 Load cover art from MP4 files 2012-01-29 19:51:58 +00: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
David Sansome 84a1ae2f87 Add some debugging code to the tagreader worker that makes it crash randomly. 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 67c6dead5a Rename SpotifyMessage to Message 2012-01-07 23:31:43 +00:00
David Sansome 68a379ef26 Use pb::spotify instead of spotify_pb for the protobuf namespace 2012-01-07 23:26:27 +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