Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | InputStream: use gcc.h attributes | Max Kellermann | 2013-04-08 | 1 | -6/+6 |
| | |||||
* | event/TimeoutMonitor: eliminate support for periodic events | Max Kellermann | 2013-04-08 | 8 | -27/+17 |
| | | | | | No caller needs this. Fixes use-after-free after returning from Client::OnTimeout(). | ||||
* | StateFile: schedule timer only after a change | Max Kellermann | 2013-04-08 | 3 | -17/+14 |
| | | | | | | Save the state file 2 minutes after the last change. This reduces the disruptions by an idle MPD, and MPD can be paged out permanently until it is used. | ||||
* | StateFile: move code to RememberVersions(), IsModified() | Max Kellermann | 2013-04-08 | 2 | -12/+33 |
| | |||||
* | StateFile: make AutoWrite() private | Max Kellermann | 2013-04-08 | 1 | -1/+3 |
| | |||||
* | Idle: fix typo in API documentation | Max Kellermann | 2013-04-08 | 1 | -1/+1 |
| | |||||
* | decoder/ffmpeg: suppress warning about unused variable | Max Kellermann | 2013-04-08 | 1 | -0/+2 |
| | | | | Only relevant for old ffmpeg versions. | ||||
* | Merge tag 'release-0.17.4' | Max Kellermann | 2013-04-08 | 3 | -9/+15 |
|\ | |||||
| * | command: don't check audio_format if not playing | Max Kellermann | 2013-04-08 | 1 | -7/+8 |
| | | | | | | | | Fixes valgrind warning. | ||||
| * | player_control: don't emit IDLE_PLAYER before audio format is known | Max Kellermann | 2013-04-08 | 2 | -2/+4 |
| | | | | | | | | | | Eliminates one IDLE_PLAYER call in playlist_control, and add two new ones to player_thread. Fixes Mantis bug 3636. | ||||
| * | command: don't print undefined audio_format | Max Kellermann | 2013-04-08 | 1 | -6/+9 |
| | | | | | | | | Check audio_format_defined(). | ||||
| * | ffmpeg decoder plugin: do not allocate an AVFrame on stack. | Anton Khirnov | 2013-04-05 | 1 | -3/+16 |
| | | | | | | | | AVFrame must be allocated with avcodec_alloc_frame(). | ||||
* | | ffmpeg decoder plugin: do not allocate an AVFrame on stack. | Anton Khirnov | 2013-04-05 | 1 | -5/+24 |
| | | | | | | | | AVFrame must be allocated with avcodec_alloc_frame(). | ||||
* | | GlobalEvents: use g_idle_add() instead of WakeFD() | Max Kellermann | 2013-02-27 | 1 | -28/+5 |
| | | | | | | | | | | Use the GMainLoop specific function to wake up the main loop. This is simpler and comes with very little overhead. | ||||
* | | GlobalEvents: wake up only if the flags were empty | Max Kellermann | 2013-02-27 | 1 | -1/+1 |
| | | | | | | | | | | Don't bother checking for the parameter mask. This doesn't matter. The only thing that matters is if a wake-up is already pending. | ||||
* | | Idle, GlobalEvents: use std::atomic::exchange() | Max Kellermann | 2013-02-27 | 2 | -2/+2 |
| | | | | | | | | Less overhead than fetch_and() for what we do. | ||||
* | | IcyMetaDataServer: increment iterator | Oddegamra | 2013-02-27 | 1 | -1/+1 |
| | | | | | | | | Fixes segmentation fault. | ||||
* | | Merge branch 'v0.17.x' | Max Kellermann | 2013-02-27 | 2 | -4/+9 |
|\| | |||||
| * | Add some comments to keep track of timer units. | Hagen Fritsch | 2013-02-27 | 1 | -3/+5 |
| | | |||||
| * | clock: fix usec-to-usec factor | Hagen Fritsch | 2013-02-27 | 1 | -1/+1 |
| | | |||||
| * | clock: add missing include | Hagen Fritsch | 2013-02-27 | 1 | -0/+3 |
| | | |||||
* | | mixer_plugin: convert to C++ | Max Kellermann | 2013-02-22 | 25 | -56/+47 |
| | | |||||
* | | {output,mixer}/winmm: convert to C++ | Max Kellermann | 2013-02-22 | 4 | -55/+66 |
| | | |||||
* | | Merge branch 'v0.17.x' | Max Kellermann | 2013-02-19 | 2 | -2/+10 |
|\| | |||||
| * | command: allow to omit END in ranges (START:END) | Jörg Thalheim | 2013-02-19 | 1 | -1/+1 |
| | | | | | | | | | | If END is omitted, mpd should use the highest possible value instead of raising an error. This partially reverts 52e9cab1c1743f64a7 | ||||
| * | player_thread: implement missing "idle" events on output errors | Max Kellermann | 2013-02-04 | 1 | -1/+9 |
| | | | | | | | | | | | | When all outputs fail, MPD automatically pauses playback, but did not emit the IDLE_PLAYER event. Thus, clients were not woken up. (Mantis 3665) | ||||
* | | output/alsa: workaround for noise after manual song change | Max Kellermann | 2013-02-04 | 1 | -0/+20 |
| | | | | | | | | | | Workaround for driver bug observed on the Raspberry Pi, see code comment for details. | ||||
* | | output/alsa: pre-allocate the silence buffer | Max Kellermann | 2013-02-04 | 1 | -14/+15 |
| | | |||||
* | | output/alsa: move code to alsa_write_silence() | Max Kellermann | 2013-02-04 | 1 | -14/+23 |
| | | |||||
* | | SocketUtil: add separators to g_prefix_error() call | Max Kellermann | 2013-02-04 | 1 | -3/+3 |
| | | |||||
* | | output/alsa: default "device" is an empty string | Max Kellermann | 2013-02-04 | 1 | -1/+1 |
| | | | | | | | | | | | | Fixes nullptr dereference in std::string::operator=(). Also fixes a memory leak by using config_get_block_string() instead of config_dup_block_string(). | ||||
* | | event/ServerSocket: close only sockets that have been opened | Max Kellermann | 2013-02-04 | 1 | -1/+3 |
| | | | | | | | | Fixes assertion failure. | ||||
* | | decoder/Opus: replace non-static data member initializers | Max Kellermann | 2013-02-04 | 1 | -6/+9 |
| | | | | | | | | Would require gcc 4.7, and MPD attempts to be compatible with gcc 4.6. | ||||
* | | ServerSocket: Initialize length variable | Uli Schlachter | 2013-02-04 | 1 | -1/+1 |
| | | |||||
* | | StateFile: use file system API, log in UTF-8 | Denis Krjuchkov | 2013-02-02 | 3 | -11/+16 |
| | | |||||
* | | SimpleDatabasePlugin: use file system API, log in UTF-8 | Denis Krjuchkov | 2013-02-02 | 2 | -25/+24 |
| | | |||||
* | | UpdateIO.cxx: use file system API, log in UTF-8 | Denis Krjuchkov | 2013-02-02 | 1 | -12/+17 |
| | | |||||
* | | UpdateWalk.cxx: use FileExists | Denis Krjuchkov | 2013-02-02 | 1 | -3/+2 |
| | | |||||
* | | TextFile.hxx: use file system API | Denis Krjuchkov | 2013-02-02 | 1 | -3/+2 |
| | | |||||
* | | SongUpdate.cxx: use StatFile | Denis Krjuchkov | 2013-02-02 | 1 | -1/+2 |
| | | |||||
* | | PlaylistSave.cxx: use FOpen | Denis Krjuchkov | 2013-02-02 | 1 | -1/+1 |
| | | |||||
* | | PlaylistFile.cxx: use file system API | Denis Krjuchkov | 2013-02-02 | 1 | -6/+5 |
| | | |||||
* | | ExcludeList.cxx: use FOpen | Denis Krjuchkov | 2013-02-02 | 1 | -2/+2 |
| | | |||||
* | | ConfigFile.cxx: use FOpenMode | Denis Krjuchkov | 2013-02-02 | 1 | -1/+1 |
| | | |||||
* | | Path.hxx: add GetDirectoryName() method | Denis Krjuchkov | 2013-02-02 | 1 | -0/+9 |
| | | |||||
* | | FileSystem.hxx: add FOpen modes for appending files | Denis Krjuchkov | 2013-02-02 | 1 | -0/+10 |
| | | |||||
* | | FilterInternal: convert struct filter to a OO interface | Max Kellermann | 2013-02-02 | 24 | -787/+515 |
| | | |||||
* | | output/null: convert to C++ | Max Kellermann | 2013-02-02 | 3 | -22/+29 |
| | | |||||
* | | filter/*: don't use GLib macros | Max Kellermann | 2013-02-02 | 6 | -26/+20 |
| | | |||||
* | | filter/Chain: use std::forward_list instead of GSList | Max Kellermann | 2013-02-01 | 1 | -41/+20 |
| | |