aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-04-24db/Helpers: use reference instead of pointerMax Kellermann1-4/+6
2014-04-24SongFilter: convert argv to ConstBufferMax Kellermann4-13/+27
2014-04-24util/{Const,Writable}Buffer: add front(), back(), pop_{front,back}(), shift()Max Kellermann2-0/+118
2014-04-24util/{Const,Writable}Buffer: add typedef reference_typeMax Kellermann2-4/+8
2014-04-24DatabaseCommands: fix crash on "list base"Max Kellermann2-7/+4
The string "base" is understood by locate_parse_type(), but not by listAllUniqueTags(). The special tag type LOCATE_TAG_BASE_TYPE causes a crash in PrintUniqueTag().
2014-04-24DatabasePrint: convert "type" to unsignedMax Kellermann2-2/+2
2014-04-24DatabaseCommands: clarify compatibility commentMax Kellermann1-1/+1
2014-04-23input/nfs: add missing string.h includeMax Kellermann1-0/+1
For strrchr(). Fixes build failure.
2014-04-09decoder/sndfile: work around libsndfile bug on partial readMarcello Desantis1-6/+20
2014-04-09PlaylistEdit: don't interrupt playback when current song gets deletedWeng Xuetian1-10/+8
2014-04-09icu/Collate: fix memory leak in IcuCaseFold()Max Kellermann1-0/+1
2014-04-05IOThread: make io_thread_get() "const"Max Kellermann1-1/+1
2014-03-19pcm/Neon: explicit roundingMax Kellermann1-3/+5
Convert to 31 bit first, then right-shift with rounding to 16 bit.
2014-03-18util/ConstBuffer: add FromVoid(), ToVoid() to "void" specializationMax Kellermann1-0/+8
Provide the full API.
2014-03-18decoder/ffmpeg: handle unknown stream start timeMax Kellermann1-2/+25
2014-03-18decoder/ffmpeg: pass AVSEEK_FLAG_ANY to av_seek_frame()Max Kellermann1-1/+1
This corrects a major mistake from commit 724a59aa - there was one small thing that commit was supposed to do, and it failed. AV_TIME_BASE is not a seek flag.
2014-03-16input/mms: move blocking I/O to threadMax Kellermann1-60/+50
2014-03-16input/BufferedInputStream: new wrapper for moving plugin to threadMax Kellermann2-0/+385
2014-03-16thread/Thread: make the destructor non-virtualMax Kellermann1-1/+1
The class does not have any virtual methods, and thus the (debug-only) destructor does not need to be virtual.
2014-03-16input/alsa: don't initialize "seekable=false", "size=-1"Max Kellermann1-2/+0
These are the default values already.
2014-03-16pcm/Neon: make neon_x4_b() variadicMax Kellermann1-6/+5
2014-03-16pcm/Neon: apply bit shift during float->int conversionMax Kellermann1-7/+2
Avoid multiplication. This is a speedup of 20%.
2014-03-16input/curl: use CircularBufferMax Kellermann1-133/+75
Replaces its own weird buffering code.
2014-03-16util/CircularBuffer: add method GetSpace()Max Kellermann1-0/+12
2014-03-16util/CircularBuffer: add method GetSize()Max Kellermann1-0/+9
2014-03-15util/CircularBuffer: rename GetSize() to GetCapacity()Max Kellermann1-22/+22
2014-03-15input/curl: add method CurlInputStream::Open()Max Kellermann1-12/+17
2014-03-15input/curl: move _seek() into the CurlInputStream classMax Kellermann1-38/+44
2014-03-15input/curl: move _easy_init() into the CurlInputStream classMax Kellermann1-30/+30
2014-03-15input/curl: pass std::string&& to HeaderReceived()Max Kellermann1-25/+8
Code simplification.
2014-03-15input/curl: move code to CurlInputStream methodsMax Kellermann1-178/+231
2014-03-15input/curl: rename "error" to "error_buffer"Max Kellermann1-3/+3
2014-03-15input/curl: rename struct input_curl to CurlInputStreamMax Kellermann1-32/+32
2014-03-15system/fd_util: export fd_set_cloexec()Max Kellermann2-1/+4
2014-03-15util/CircularBuffer: new buffer classMax Kellermann1-0/+165
2014-03-15configure.ac: always define _GNU_SOURCE on LinuxMax Kellermann3-13/+0
Make sure glibc gives us all features.
2014-03-15pcm/PcmFormat: ARM NEON optimizations for float->s16Max Kellermann2-1/+135
This is nearly 4 times faster than the "portable" algorithm.
2014-03-14pcm/PcmFormat: don't use WritableBufferMax Kellermann1-28/+20
The previous commit eliminated the need for that.
2014-03-14pcm/PcmFormat: instantiate FloatToInteger<S32>Max Kellermann1-6/+1
.. instead of reusing FloatToInteger<S24> and converting from S24 to S32 in-place.
2014-03-14pcm/PcmFormat: eliminate more duplicate code with templatesMax Kellermann3-122/+233
Refactor the conversion functions to classes and pass an instance to the new function AllocateConvert().
2014-03-14pcm/PcmFormat: eliminate local variable "bits"Max Kellermann1-3/+1
2014-03-14pcm/PcmFormat: remove obsolete AllocateFromFloat() overloadMax Kellermann1-15/+0
2014-03-14MultipleOutputs: ensure input_audio_format is zero-initialisedPete Beardmore1-0/+1
-fixes SIGABRT when mpd is started from a previously paused state -regression introduced by commit: f5a923b9d16e4c63942a033d1bdb2ab150aae342: 'OutputAll: convert to class, move instance to class Partition' -input_audio_format was previously declared using the static modifier ensuring it was zero-initialised by default -the current default-initialised input_audio_format contains garbage at runtime which allows the AudioFormat.IsDefined() 'fail fast' test in MultipleOutputs::Update to pass and the SIGABRT follows in AudioOutput::Open when passed the invalid input_audio_format struct -switching AudioFormat.IsDefined() for AudioFormat.IsValid() is an alternative workaround
2014-03-14command/{storage,file}: suppress bogus format warnings on WIN32Max Kellermann2-0/+22
2014-03-06db/proxy: check connect error before initializing SocketMonitorMax Kellermann1-7/+7
Fixes crash bug because mpd_connection_get_async() was called without a connection.
2014-03-06decoder/gme: fix memory leak in container_scan()Max Kellermann1-0/+1
2014-03-05PulseOutputPlugin: avoid locking mainloop object from within mainloop threadPete Beardmore1-5/+14
-fixes regression introduced by: '8d6fedf8177d0d2ced81e6d93d35c368b2ac69db [PATCH] Mixer: add class MixerListener' -listener.OnMixerVolumeChanged() called GetVolume() which attempted to acquire the lock but as per 'pa_threaded_mainloop_lock()' documentation: This function may not be called inside the event loop thread. Events that are dispatched from the event loop thread are executed with this lock held -this patch seperates the underlying action of GetVolume() into a new GetVolumeInternal() function, to be called only when the lock is already held, as is the case for the listener.OnMixerVolumeChanged() call
2014-03-04PulseOutputPlugin: set icon namePete Beardmore1-0/+1
2014-03-02output/alsa: remove the obsolete Raspberry Pi workaroundMax Kellermann1-36/+0
Has been superseded by the previous commit.
2014-03-02output/alsa: call snd_pcm_prepare() after snd_pcm_drop()Max Kellermann1-0/+25
Don't wait for an optimistic write to fail. This is an improved workaround for the infamous Raspberry Pi bug (see commit af991765). It works much better and comes without the negative side effects. The old workaround is now obsolete.