aboutsummaryrefslogtreecommitdiffstats
path: root/NEWS (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge tag 'v0.19.8'Max Kellermann2015-01-141-2/+2
|\
| * release v0.19.8Max Kellermann2015-01-141-1/+1
| |
| * Merge tag 'v0.18.22' into v0.19.xMax Kellermann2015-01-141-1/+1
| |\
| | * release v0.18.22Max Kellermann2015-01-141-1/+1
| | |
* | | output/recorder: dynamic file nameMax Kellermann2015-01-141-0/+1
| | |
* | | fs/io/FileOutputStream: use O_TMPFILE if availableMax Kellermann2015-01-061-0/+1
| | | | | | | | | | | | | | | | | | The Linux feature allows writing new files to an invisible file, and then replace the old file. This preserves the old file if we get interrupted by some event.
* | | Merge branch 'v0.19.x'Max Kellermann2015-01-061-0/+2
|\| |
| * | input/async: reset the "open" flag after seeking successfullyMax Kellermann2015-01-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes a problem with the "curl" input plugin: IsEOF() always returns true because the "open" flag was cleared by CurlInputStream::RequestDone() when end-of-stream was reached. This flag stays false even when seeking to another position has succeeded. This patch resets the "open" flag to true after seeking successfully.
| * | thread/Name: disable pthread_setname_np() on NetBSDMax Kellermann2015-01-061-0/+1
| | | | | | | | | | | | | | | | | | | | | NetBSD's pthread_setname_np() prototype is incompatible with the rest of the world, and it requires to pass the string argument as a non-const pointer. Instead of working around this misdesign, I hereby disable the feature on NetBSD.
* | | output/recorder: implement send_tag()Max Kellermann2014-12-261-0/+1
| | |
* | | Merge branch 'v0.19.x'Max Kellermann2014-12-261-0/+5
|\| |
| * | Merge branch 'v0.18.x' into v0.19.xMax Kellermann2014-12-261-0/+4
| |\|
| | * util/{ASCII,UriUtil}, ...: work around -Wtautological-pointer-compareMax Kellermann2014-12-261-0/+1
| | | | | | | | | | | | New in clang 3.6.
| | * configure.ac: prepare for 0.18.22Max Kellermann2014-12-261-0/+2
| | |
| * | decoder/ffmpeg: support interleaved floating pointMax Kellermann2014-12-231-0/+1
| | |
* | | output/jack: use jack_ringbuffer_get_write_vector()Max Kellermann2014-12-241-0/+1
| | | | | | | | | | | | Reduce number of libjack calls.
* | | Merge branch 'v0.19.x'Max Kellermann2014-12-231-0/+6
|\| |
| * | input/mms: limit the mmsx_read() sizeMax Kellermann2014-12-231-0/+2
| | |
| * | DSF ID3 tags hitting 4k size limitJan Brittenson2014-12-231-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Here's a change to dynamically allocate the DSD ID3 tag buffer. Pretty much anything with cover art is going to exceed the existing, static 4k limit... Here's a change to dynamically allocate the buffer and sanity check it at some upper limit. I rather arbitrarily pulled 256k out of thin air just to keep a corrupt file from causing it to trying to allocate a buffer larger than available memory.
| * | configure.ac: prepare for 0.19.8Max Kellermann2014-12-231-0/+2
| | |
* | | Merge tag 'v0.19.7'Max Kellermann2014-12-171-1/+10
|\| |
| * | release v0.19.7Max Kellermann2014-12-171-1/+1
| | |
| * | Merge tag 'v0.18.21' into v0.19.xMax Kellermann2014-12-171-0/+9
| |\|
| | * release v0.18.21Max Kellermann2014-12-171-1/+1
| | |
| | * playlist/embcue: fix filename suffix detectionk442014-12-161-0/+2
| | | | | | | | | | | | | | | The definition of the playlist_plugin struct member of the embcue plugin was incorrect.
| | * decoder/ffmpeg: detect and fix negative time stampsMax Kellermann2014-12-151-0/+2
| | | | | | | | | | | | | | | Works around assertion failure due to something that appears to be a (minor) FFmpeg bug.
| | * configure.ac: prepare for 0.18.21Max Kellermann2014-12-151-0/+2
| | |
* | | Merge branch 'v0.19.x'Max Kellermann2014-12-151-0/+7
|\| |
| * | storage/nfs: add timeoutMax Kellermann2014-12-151-0/+2
| | |
| * | lib/nfs/Connection: implement mount timeoutMax Kellermann2014-12-151-0/+1
| | |
| * | lib/nfs/Connection: fix reconnect after mount failureMax Kellermann2014-12-141-0/+1
| | | | | | | | | | | | | | | | | | | | | When mounting had not yet finished, SocketMonitor::IsDefined() was always false, due to the workaround at the beginning of the function that calls SocketMonitor::Steal(). This commit drops the IsDefined() check because it was never necessary and breaks reconnect.
| * | lib/nfs/Connection: fix memory leak (and assertion failure)Max Kellermann2014-12-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | nfs_destroy_context() will invoke all pending callbacks with err==-EINTR. In CancellableCallback::Callback(), this will invoke NfsConnection::DeferClose(), which however is only designed to be called from nfs_service(). In non-debug mode, this will leak memory because nfs_close_async() is never called. Workaround: before nfs_destroy_context(), invoke nfs_close_async() on all pending file handles.
| * | lib/nfs/Connection: fix crash while canceling a failing Open()Max Kellermann2014-12-141-0/+2
| | | | | | | | | | | | | | | | | | | | | The method NfsConnection::CancellableCallback::Callback() will always invoke NfsConnection::Close() on the file handle, even if the void pointer is not a nfsfh. This can happen if the Open() was not successful, e.g. when the file does not exist.
* | | sticker/Match: add operator "EQUALS"Max Kellermann2014-12-121-0/+1
| | | | | | | | | | | | | | | Mapped to "=" in the MPD protocol. This is the first operator, initially supporting value matches in the MPD protocol.
* | | vorbiscomments: Remove support for non-standard "album artist" tags.Rasmus Steinke2014-12-121-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | MPD used both "album artist" and "albumartist" tags and mapped them to one tag. This could lead to issues, if a file had both tags, causing MPD to send a list of albumartists instead of a single one. Since "album artist" is not a standard tag anyway and even its originators started to use the proper alternative, its time to say goodbye!
* | | Merge branch 'v0.19.x'Max Kellermann2014-12-121-0/+1
|\| |
| * | util/HugeAllocator: disable MEM_LARGE_PAGES on WindowsMax Kellermann2014-12-121-0/+1
| | | | | | | | | | | | | | | | | | MEM_LARGE_PAGES does not appear to work. Instead, MEM_RESERVE appears to be necessary. Until I figure this out, this large pages are disabled.
* | | decoder/ffmpeg: support stream tagsMax Kellermann2014-12-111-0/+1
| | |
* | | NEWS: mention ffmpeg/MixRampMax Kellermann2014-12-101-1/+1
| | |
* | | decoder/ffmpeg: support ReplayGain and MixRampMax Kellermann2014-12-101-0/+2
| | |
* | | Merge branch 'v0.19.x'Max Kellermann2014-12-091-0/+4
|\| |
| * | playlist/Print: don't skip non-existent songs in "listplaylist"Max Kellermann2014-12-091-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Skipping those songs silently will confuse the client, because commands specifying the song index within a playlist (e.g. playlistdelete) will be out of sync. This copies spl_print()'s behavior to playlist_file_print().
| * | configure.ac: prepare for 0.19.7Max Kellermann2014-12-091-0/+2
| | |
* | | Merge tag 'v0.19.6'Max Kellermann2014-12-081-0/+13
|\| |
| * | release v0.19.6Max Kellermann2014-12-081-1/+1
| | |
| * | android/build.py: update FFmpeg to 2.5Max Kellermann2014-12-081-0/+1
| | |
| * | Merge tag 'v0.18.20' into v0.19.xMax Kellermann2014-12-081-0/+8
| |\|
| | * release v0.18.20Max Kellermann2014-12-081-1/+1
| | |
| | * decoder/ffmpeg: support FFmpeg 2.5Max Kellermann2014-12-081-0/+2
| | | | | | | | | | | | | | | | | | Version 2.5 fixed an API oddity, however it broke API compatibility, at least with C++. Disable the workaround when a libavformat version is detected that is recent enough.
| | * thread/Id: drop "::" prefix before pthread function namesMax Kellermann2014-12-081-0/+1
| | | | | | | | | | | | | | | | | | The "::" to explicitly refer to the global namespace appeared like a good idea in C++, but it breaks with C libraries that implement standard functions using macros (e.g. musl).