Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | pcm/PcmFormat: eliminate local variable "bits" | Max Kellermann | 2014-03-14 | 1 | -3/+1 | |
| | | ||||||
* | | pcm/PcmFormat: remove obsolete AllocateFromFloat() overload | Max Kellermann | 2014-03-14 | 1 | -15/+0 | |
| | | ||||||
* | | MultipleOutputs: ensure input_audio_format is zero-initialised | Pete Beardmore | 2014-03-14 | 1 | -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 | |||||
* | | command/{storage,file}: suppress bogus format warnings on WIN32 | Max Kellermann | 2014-03-14 | 2 | -0/+22 | |
| | | ||||||
* | | db/proxy: check connect error before initializing SocketMonitor | Max Kellermann | 2014-03-06 | 1 | -7/+7 | |
| | | | | | | | | | | Fixes crash bug because mpd_connection_get_async() was called without a connection. | |||||
* | | PulseOutputPlugin: avoid locking mainloop object from within mainloop thread | Pete Beardmore | 2014-03-05 | 1 | -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 | |||||
* | | PulseOutputPlugin: set icon name | Pete Beardmore | 2014-03-04 | 1 | -0/+1 | |
| | | ||||||
* | | Merge tag 'release-0.18.9' | Max Kellermann | 2014-03-02 | 3 | -35/+29 | |
|\| | ||||||
| * | release v0.18.9 | Max Kellermann | 2014-03-02 | 1 | -1/+1 | |
| | | ||||||
| * | output/alsa: remove the obsolete Raspberry Pi workaround | Max Kellermann | 2014-03-02 | 1 | -36/+0 | |
| | | | | | | | | Has been superseded by the previous commit. | |||||
| * | output/alsa: call snd_pcm_prepare() after snd_pcm_drop() | Max Kellermann | 2014-03-02 | 2 | -0/+27 | |
| | | | | | | | | | | | | | | 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. | |||||
| * | event/SignalMonitor: fix build failure due to missing signal.h include | Max Kellermann | 2014-03-02 | 2 | -0/+3 | |
| | | ||||||
| * | AllCommands: "findadd" requires the "add" permission | Max Kellermann | 2014-02-27 | 2 | -1/+3 | |
| | | ||||||
| * | output/pulse: remove bogus g_free() call | Max Kellermann | 2014-02-24 | 1 | -2/+0 | |
| | | ||||||
* | | android build 3 | Max Kellermann | 2014-03-02 | 1 | -2/+2 | |
| | | ||||||
* | | Main: auto-configure state file on Android | Max Kellermann | 2014-03-02 | 1 | -2/+15 | |
| | | ||||||
* | | Main: use getExternalStorageDirectory() for locating mpd.conf | Max Kellermann | 2014-03-02 | 1 | -2/+11 | |
| | | ||||||
* | | android/build.py: enable ffmpeg | Max Kellermann | 2014-03-02 | 1 | -0/+58 | |
| | | ||||||
* | | InputPlugin: allow init() to soft-fail | Max Kellermann | 2014-03-02 | 6 | -16/+65 | |
| | | | | | | | | | | Add enum InputResult which is a tri-state. Input plugins may now fail and just become unavailable. | |||||
* | | thread/Name: fall back to prctl() | Max Kellermann | 2014-03-01 | 1 | -0/+4 | |
| | | ||||||
* | | output/sles: support stereo | Max Kellermann | 2014-03-01 | 1 | -5/+7 | |
| | | ||||||
* | | fs/StandardDirectory: add GetUserCacheDir() | Max Kellermann | 2014-03-01 | 4 | -15/+26 | |
| | | | | | | | | | | | | Move code from CreateConfiguredDatabase() and add XDG support. This implements an automatic Linux fallback for the setting "db_file" if none was specified. | |||||
* | | NEWS: add group "configuration" | Max Kellermann | 2014-03-01 | 1 | -1/+2 | |
| | | ||||||
* | | db/Configured: store database file in cache directory | Max Kellermann | 2014-03-01 | 8 | -4/+122 | |
| | | | | | | | | | | Add class Context which wraps the Android/Java Context class and add a JNI wrapper for method Context.getCacheDir(). | |||||
* | | java/File: add method ToAbsolutePath() returning AllocatedPath | Max Kellermann | 2014-03-01 | 5 | -60/+67 | |
| | | ||||||
* | | android/Environment: fix copyright header | Max Kellermann | 2014-03-01 | 2 | -42/+34 | |
| | | | | | | | | Stole my own code from another project :-) | |||||
* | | android/build.py: enable libid3tag | Max Kellermann | 2014-03-01 | 1 | -0/+8 | |
| | | ||||||
* | | TagId3: disable charset conversion without GLib | Max Kellermann | 2014-03-01 | 1 | -0/+9 | |
| | | ||||||
* | | Main: inline mpd_main() on Android | Max Kellermann | 2014-03-01 | 2 | -0/+7 | |
| | | ||||||
* | | Android: obtain music directory from ↵ | Max Kellermann | 2014-03-01 | 5 | -2/+184 | |
| | | | | | | | | Environment.getExternalStoragePublicDirectory() | |||||
* | | java: new helper library for the Android port | Max Kellermann | 2014-03-01 | 15 | -1/+735 | |
| | | ||||||
* | | Main: load mpd.conf from /sdcard/ on Android | Max Kellermann | 2014-03-01 | 1 | -0/+3 | |
| | | | | | | | | Hard-coded path. Will be replaced soon. | |||||
* | | storage/Configured: fix fallback music directory | Max Kellermann | 2014-03-01 | 1 | -4/+1 | |
| | | | | | | | | This was accidently disabled when storage plugins were introduced. | |||||
* | | android: use "strip" from the Android NDK | Max Kellermann | 2014-03-01 | 2 | -2/+5 | |
| | | ||||||
* | | android: enable database plugins | Max Kellermann | 2014-03-01 | 1 | -1/+0 | |
| | | ||||||
* | | Makefile.am: use Android API level 17 | Max Kellermann | 2014-03-01 | 1 | -1/+1 | |
| | | | | | | | | The SDK for level 9 cannot be downloaded anymore. | |||||
* | | db/update/ExcludeList: make no-op if GLib is disabled | Max Kellermann | 2014-03-01 | 2 | -0/+22 | |
| | | | | | | | | Quick hack to allow using the database without GLib (for Android). | |||||
* | | android: downgrade WRITE_EXTERNAL_STORAGE to READ_EXTERNAL_STORAGE | Max Kellermann | 2014-03-01 | 1 | -1/+1 | |
| | | | | | | | | | | We're not using external storage yet, but as soon as we will, we only need to read music files, not write them. | |||||
* | | util/{Const,Writable}Buffer: add operator[] | Max Kellermann | 2014-03-01 | 7 | -19/+41 | |
| | | ||||||
* | | util/{Const,Writable}Buffer: add template specialization for "void" | Max Kellermann | 2014-03-01 | 2 | -0/+68 | |
| | | | | | | | | Omit a few methods that are not applicable. | |||||
* | | util/ConstBuffer: remove cast operator ConstBuffer<void> | Max Kellermann | 2014-03-01 | 1 | -4/+0 | |
| | | | | | | | | This was bugged, because it did not scale the "size". | |||||
* | | command: add command "listfiles" | Max Kellermann | 2014-03-01 | 15 | -54/+336 | |
| | | | | | | | | Lists files and directories. Supports storage plugins. | |||||
* | | m4: add missing file ax_pthread.m4 from autoconf-archive | Max Kellermann | 2014-03-01 | 1 | -0/+332 | |
| | | ||||||
* | | DatabasePrint: move code to PrintDirectoryURI() | Max Kellermann | 2014-02-28 | 1 | -2/+8 | |
| | | ||||||
* | | DatabasePrint: add API documentation | Max Kellermann | 2014-02-28 | 1 | -0/+3 | |
| | | ||||||
* | | {Other,Database}Commands: contract declaration and assignment | Max Kellermann | 2014-02-28 | 2 | -12/+6 | |
| | | ||||||
* | | db/simple: mount points | Max Kellermann | 2014-02-27 | 19 | -24/+603 | |
| | | | | | | | | | | | | | | | | A SimpleDatabase instance can now "mount" other Database instances at certain locations. This is used to use a new SimpleDatabase instance for each storage mount (issued with the "mount" protocol command). Each such instance has its own database file, stored in the directory that is specified with the "cache_directory" option. | |||||
* | | CompositeStorage: add method GetMount() | Max Kellermann | 2014-02-27 | 2 | -0/+24 | |
| | | ||||||
* | | db/update/Queue: use std::list instead of std::queue | Max Kellermann | 2014-02-27 | 2 | -5/+4 | |
| | | | | | | | | | | | | The problem with std::queue is that it doesn't give us enough control. The method Clear() is a kludge already, but soon, we'll need filtering. | |||||
* | | db/simple: GetRoot() returns reference | Max Kellermann | 2014-02-27 | 2 | -3/+3 | |
| | |