aboutsummaryrefslogtreecommitdiffstats
path: root/src/PlayerThread.cxx (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* PlayerThread: use player referencesMax Kellermann2013-09-261-116/+115
|
* PlayerThread: use {decoder,player}_control referencesMax Kellermann2013-09-261-214/+214
|
* PlayerThread: allocate decoder_control on the stackMax Kellermann2013-09-261-5/+5
|
* PlayerThread: move global MusicBuffer variable into the player objectMax Kellermann2013-09-261-24/+27
|
* PlayerThread: simplify "buffer empty" assertionMax Kellermann2013-09-261-7/+1
|
* MusicBuffer: expose the C++ APIMax Kellermann2013-09-261-19/+18
|
* MusicPipe: expose the C++ APIMax Kellermann2013-09-261-25/+24
|
* Tag, ...: move to libtag.aMax Kellermann2013-09-051-1/+1
|
* util/Error: new error passing libraryMax Kellermann2013-09-041-21/+19
| | | | Replaces GLib's GError.
* Makefile.am: move sources to libsystem.aMax Kellermann2013-08-071-1/+1
|
* FatalError: new library to replace mpd_error.hMax Kellermann2013-08-071-2/+2
|
* *: use gcc.h macros instead of GLibMax Kellermann2013-08-041-1/+1
|
* audio_format: convert to C++Max Kellermann2013-08-031-14/+13
|
* tag: convert to C++Max Kellermann2013-07-301-12/+12
|
* song: convert header to C++Max Kellermann2013-07-281-21/+21
|
* use g_thread_new() if GLib is recent enoughMax Kellermann2013-04-171-0/+4
| | | | Fixes deprecation warnings.
* Merge tag 'release-0.17.4'Max Kellermann2013-04-081-0/+4
|
* Merge branch 'v0.17.x'Max Kellermann2013-02-191-1/+9
|
* PlayerControl: add second Cond objectMax Kellermann2013-01-251-1/+1
| | | | | | | | | | | | | This fixes a deadlock bug introduced by 18076ac9. After all, the second Cond was necessary. The problem: two threads can wait for a signal at the same time. The player thread waits for the output thread to finish playback. The main thread waits for the player thread to complete a command. The output thread finishes playback, and sends a signal, which unfortunately does not wake up the player thread, but the main thread. The main thread sees that the command is still not finished, and waits again. The signal is lost forever, and MPD is deadlocked.
* DecoderControl: move functions into the classMax Kellermann2013-01-211-31/+31
|
* PlayerControl: move functions into the classMax Kellermann2013-01-201-61/+61
|
* PlayerControl: switch to the Mutex/Cond classesMax Kellermann2013-01-101-1/+1
|
* PlayerThread: use pc.cond instead of main_condMax Kellermann2013-01-101-1/+1
| | | | | The main_cond variable was completely unnecessary. The pc.cond object can be used for both main->pc and pc->main.
* DecoderControl: take ownership of client_condMax Kellermann2013-01-101-1/+1
| | | | | Don't let the "client" pass its own GCond. This was not used consistently.
* EventPipe: rename to GlobalEventsMax Kellermann2013-01-091-5/+5
|
* event_pipe.h: convert to C++Max Kellermann2013-01-091-4/+1
|
* idle: convert to C++Max Kellermann2013-01-091-1/+1
|
* replay_gain_info, ...: use cmath instead of math.h in C++ modeMax Kellermann2013-01-071-1/+3
| | | | Fixes build problems with mingw32.
* decoder_api.h, ...: add "extern C"Max Kellermann2013-01-071-1/+1
|
* mixer_all: convert to C++Max Kellermann2013-01-071-1/+1
|
* player_control.h: convert header to C++Max Kellermann2013-01-041-1/+1
|
* MusicChunk: move functions to methodsMax Kellermann2013-01-041-2/+2
|
* crossfade: convert to C++Max Kellermann2013-01-041-1/+1
|
* buffer, pipe: convert to C++Max Kellermann2013-01-041-3/+3
|
* decoder_*: convert to C++Max Kellermann2013-01-041-1/+1
|
* {decoder,player}_thread: convert to C++Max Kellermann2013-01-021-0/+1198