Commit Graph

7098 Commits

Author SHA1 Message Date
Anton Khirnov e0c2c77c2a ffmpeg decoder plugin: do not allocate an AVFrame on stack.
AVFrame must be allocated with avcodec_alloc_frame().
2013-04-05 23:30:47 +02:00
Max Kellermann 6f2e1c2415 GlobalEvents: use g_idle_add() instead of WakeFD()
Use the GMainLoop specific function to wake up the main loop.  This is
simpler and comes with very little overhead.
2013-02-27 20:41:17 +01:00
Max Kellermann fc0ad8674b GlobalEvents: wake up only if the flags were empty
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.
2013-02-27 20:40:46 +01:00
Max Kellermann 19c67ab724 Idle, GlobalEvents: use std::atomic::exchange()
Less overhead than fetch_and() for what we do.
2013-02-27 20:35:44 +01:00
Oddegamra a046b6e105 IcyMetaDataServer: increment iterator
Fixes segmentation fault.
2013-02-27 20:01:58 +01:00
Max Kellermann 8017301de5 Merge branch 'v0.17.x' 2013-02-27 20:00:14 +01:00
Florian Schlichting 46528783ef fix typos in upstream's mpd.conf.5 2013-02-27 19:50:05 +01:00
Hagen Fritsch 6f4bb6cd2c Add some comments to keep track of timer units. 2013-02-27 19:47:28 +01:00
Hagen Fritsch 2cf31e905b clock: fix usec-to-usec factor 2013-02-27 19:45:31 +01:00
Hagen Fritsch 28a60db5aa clock: add missing include 2013-02-27 19:42:35 +01:00
Max Kellermann 496f70fc0d mixer_plugin: convert to C++ 2013-02-22 20:51:23 +01:00
Max Kellermann 9ede4c5f3c {output,mixer}/winmm: convert to C++ 2013-02-22 20:29:03 +01:00
Max Kellermann 214a526945 Merge branch 'v0.17.x' 2013-02-19 09:24:11 +01:00
Jörg Thalheim d5b756413a command: allow to omit END in ranges (START:END)
If END is omitted, mpd should use the highest possible value instead of raising an error.
This partially reverts 52e9cab1c1
2013-02-19 09:23:18 +01:00
Max Kellermann af99176581 output/alsa: workaround for noise after manual song change
Workaround for driver bug observed on the Raspberry Pi, see code
comment for details.
2013-02-04 15:51:32 +01:00
Max Kellermann 57e825dfe7 output/alsa: pre-allocate the silence buffer 2013-02-04 15:30:31 +01:00
Max Kellermann e06dd129dd output/alsa: move code to alsa_write_silence() 2013-02-04 14:30:16 +01:00
Max Kellermann 00baddcd9e SocketUtil: add separators to g_prefix_error() call 2013-02-04 14:26:03 +01:00
Max Kellermann 7e92820c50 output/alsa: default "device" is an empty string
Fixes nullptr dereference in std::string::operator=().  Also fixes a
memory leak by using config_get_block_string() instead of
config_dup_block_string().
2013-02-04 11:46:49 +01:00
Max Kellermann 5692e20fd5 event/ServerSocket: close only sockets that have been opened
Fixes assertion failure.
2013-02-04 11:44:36 +01:00
Max Kellermann 3b3c9334c8 decoder/Opus: replace non-static data member initializers
Would require gcc 4.7, and MPD attempts to be compatible with gcc 4.6.
2013-02-04 11:08:32 +01:00
Max Kellermann 96dc0a318a player_thread: implement missing "idle" events on output errors
When all outputs fail, MPD automatically pauses playback, but did not
emit the IDLE_PLAYER event.  Thus, clients were not woken up.  (Mantis
3665)
2013-02-04 10:15:34 +01:00
Uli Schlachter a4223aac38 ServerSocket: Initialize length variable 2013-02-04 09:30:21 +01:00
Denis Krjuchkov 2bb751d9fa StateFile: use file system API, log in UTF-8 2013-02-02 20:52:04 +06:00
Denis Krjuchkov 3b620112ca SimpleDatabasePlugin: use file system API, log in UTF-8 2013-02-02 20:52:03 +06:00
Denis Krjuchkov 99526219b7 UpdateIO.cxx: use file system API, log in UTF-8 2013-02-02 20:52:02 +06:00
Denis Krjuchkov d818b618af UpdateWalk.cxx: use FileExists 2013-02-02 20:51:36 +06:00
Denis Krjuchkov c64700e7ae TextFile.hxx: use file system API 2013-02-02 20:23:27 +06:00
Denis Krjuchkov 5bd1917705 SongUpdate.cxx: use StatFile 2013-02-02 20:22:32 +06:00
Denis Krjuchkov 178c6c20cd PlaylistSave.cxx: use FOpen 2013-02-02 20:21:46 +06:00
Denis Krjuchkov 92d71cc7fa PlaylistFile.cxx: use file system API 2013-02-02 20:21:10 +06:00
Denis Krjuchkov 227eca7d28 ExcludeList.cxx: use FOpen 2013-02-02 20:20:24 +06:00
Denis Krjuchkov 9399b0ea52 ConfigFile.cxx: use FOpenMode 2013-02-02 20:19:25 +06:00
Denis Krjuchkov 17dca254a3 Path.hxx: add GetDirectoryName() method 2013-02-02 19:28:02 +06:00
Denis Krjuchkov f6b50d2387 FileSystem.hxx: add FOpen modes for appending files 2013-02-02 19:20:10 +06:00
Max Kellermann a9ce0218c1 FilterInternal: convert struct filter to a OO interface 2013-02-02 09:34:07 +01:00
Max Kellermann 7bb5a960fd output/null: convert to C++ 2013-02-02 09:30:29 +01:00
Max Kellermann e6b04d1b50 filter/*: don't use GLib macros 2013-02-02 08:31:17 +01:00
Max Kellermann 12613356fc filter/Chain: use std::forward_list instead of GSList 2013-02-01 18:14:06 +01:00
Max Kellermann 3894450b10 filter: convert to C++ 2013-02-01 17:47:09 +01:00
Max Kellermann ec07f6ec83 PcmMix: merge duplicate code with templates 2013-02-01 17:45:17 +01:00
Max Kellermann a7a10d03c9 test/test_pcm: add unit test for pcm_mix() 2013-02-01 15:52:03 +01:00
Max Kellermann ef99d6ce3d PcmUtils: remove pcm_range(), use PcmClamp() instead 2013-02-01 14:10:27 +01:00
Max Kellermann 0ac06d77f1 PcmUtils: make PcmClamp() 64-bit-safe, add missing cast 2013-02-01 14:04:40 +01:00
Max Kellermann 469e233428 PcmUtils: remove unused clamp functions 2013-02-01 14:02:20 +01:00
Max Kellermann 86a0f9cf9b PcmFormat: merge duplicate code with a template 2013-02-01 13:47:29 +01:00
Max Kellermann e6a91d291d PcmChannels: merge duplicate code with a template 2013-02-01 13:47:24 +01:00
Max Kellermann bf35972714 ConfigTemplates: fix typo in id3v1_encoding 2013-02-01 13:47:12 +01:00
Max Kellermann e0c645a270 test/test_pcm: add unit tests for the PcmFormat library 2013-02-01 00:32:05 +01:00
Max Kellermann e42734c3f3 test/test_pcm: merge source buffer generator 2013-01-31 22:58:27 +01:00