aboutsummaryrefslogtreecommitdiffstats
path: root/NEWS (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-01-29Avoid integer overflow in MonotonicClock{S,MS,US}PHO1-0/+1
This is Darwin specific: the previous implementation was causing an integer overflow when base.numer is very large. On PPC Darwin, the timebase info is 1000000000/33330116 and this is too large for integer arithmetic.
2015-01-29decoder/DsdLib: raise ID3 tag limit to 1 MBMax Kellermann1-0/+2
A bug report was submitted with a 600 kB ID3 tag that could not be read by MPD.
2015-01-26Test the existence of strndup(3) before using it.PHO1-0/+1
This can eliminate the ad-hoc "#ifdef WIN32" and can also support other platforms lacking it as well (including Darwin 9).
2015-01-26{playlist,input}/despotify: remove defunct pluginMax Kellermann1-0/+1
2015-01-23ClientProcess: cast enum to int before passing to printf()Max Kellermann1-0/+1
Fixes gcc5 warning.
2015-01-23configure.ac: prepare for 0.18.23Max Kellermann1-0/+2
2015-01-22pcm/SoxrResampler: allow multi-threaded resamplingMax Kellermann1-0/+1
2015-01-22Config: add section "resampler"Max Kellermann1-0/+3
2015-01-21thread/Name: include stdio.h if HAVE_PRCTLMax Kellermann1-0/+1
Caused a build failure with uClibc because snprintf() was not available.
2015-01-16configure.ac: prepare for 0.19.9Max Kellermann1-0/+2
2015-01-15db/plugins/ProxyDatabasePlugin: add "keepalive" parameterJoshua Wise1-0/+2
2015-01-14release v0.19.8Max Kellermann1-1/+1
2015-01-14release v0.18.22Max Kellermann1-1/+1
2015-01-14output/recorder: dynamic file nameMax Kellermann1-0/+1
2015-01-06fs/io/FileOutputStream: use O_TMPFILE if availableMax Kellermann1-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.
2015-01-06input/async: reset the "open" flag after seeking successfullyMax Kellermann1-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.
2015-01-06thread/Name: disable pthread_setname_np() on NetBSDMax Kellermann1-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.
2014-12-26output/recorder: implement send_tag()Max Kellermann1-0/+1
2014-12-26util/{ASCII,UriUtil}, ...: work around -Wtautological-pointer-compareMax Kellermann1-0/+1
New in clang 3.6.
2014-12-26configure.ac: prepare for 0.18.22Max Kellermann1-0/+2
2014-12-24output/jack: use jack_ringbuffer_get_write_vector()Max Kellermann1-0/+1
Reduce number of libjack calls.
2014-12-23decoder/ffmpeg: support interleaved floating pointMax Kellermann1-0/+1
2014-12-23input/mms: limit the mmsx_read() sizeMax Kellermann1-0/+2
2014-12-23DSF ID3 tags hitting 4k size limitJan Brittenson1-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.
2014-12-23configure.ac: prepare for 0.19.8Max Kellermann1-0/+2
2014-12-17release v0.19.7Max Kellermann1-1/+1
2014-12-17release v0.18.21Max Kellermann1-1/+1
2014-12-16playlist/embcue: fix filename suffix detectionk441-0/+2
The definition of the playlist_plugin struct member of the embcue plugin was incorrect.
2014-12-15storage/nfs: add timeoutMax Kellermann1-0/+2
2014-12-15decoder/ffmpeg: detect and fix negative time stampsMax Kellermann1-0/+2
Works around assertion failure due to something that appears to be a (minor) FFmpeg bug.
2014-12-15configure.ac: prepare for 0.18.21Max Kellermann1-0/+2
2014-12-15lib/nfs/Connection: implement mount timeoutMax Kellermann1-0/+1
2014-12-14lib/nfs/Connection: fix reconnect after mount failureMax Kellermann1-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.
2014-12-14lib/nfs/Connection: fix memory leak (and assertion failure)Max Kellermann1-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.
2014-12-14lib/nfs/Connection: fix crash while canceling a failing Open()Max Kellermann1-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.
2014-12-12sticker/Match: add operator "EQUALS"Max Kellermann1-0/+1
Mapped to "=" in the MPD protocol. This is the first operator, initially supporting value matches in the MPD protocol.
2014-12-12vorbiscomments: Remove support for non-standard "album artist" tags.Rasmus Steinke1-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!
2014-12-12util/HugeAllocator: disable MEM_LARGE_PAGES on WindowsMax Kellermann1-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.
2014-12-11decoder/ffmpeg: support stream tagsMax Kellermann1-0/+1
2014-12-10NEWS: mention ffmpeg/MixRampMax Kellermann1-1/+1
2014-12-10decoder/ffmpeg: support ReplayGain and MixRampMax Kellermann1-0/+2
2014-12-09playlist/Print: don't skip non-existent songs in "listplaylist"Max Kellermann1-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().
2014-12-09configure.ac: prepare for 0.19.7Max Kellermann1-0/+2
2014-12-08release v0.19.6Max Kellermann1-1/+1
2014-12-08android/build.py: update FFmpeg to 2.5Max Kellermann1-0/+1
2014-12-08release v0.18.20Max Kellermann1-1/+1
2014-12-08decoder/ffmpeg: support FFmpeg 2.5Max Kellermann1-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.
2014-12-08thread/Id: drop "::" prefix before pthread function namesMax Kellermann1-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).
2014-12-08configure.ac: prepare for 0.18.20Max Kellermann1-0/+2
2014-12-05configure.ac: make GLib optional by defaultMax Kellermann1-0/+1
Only very few (minor) features still depend on GLib.