aboutsummaryrefslogtreecommitdiffstats
path: root/NEWS (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-10-16encoder/flac: fix crash with 32 bit playbackMax Kellermann1-0/+2
Copy to encoder->audio_format *after* adjusting the sample format to S24_P32. Fixes http://bugs.musicpd.org/view.php?id=4433
2015-10-16tag/ApeLoader: fix buffer overflow after unterminated keyMax Kellermann1-0/+2
2015-10-16configure.ac: prepare for 0.19.11Max Kellermann1-0/+2
2015-06-21release v0.19.10Max Kellermann1-1/+1
2015-06-21PlayerThread: start the decoder on PlayerCommand::QUEUEMax Kellermann1-0/+1
Fixes missing SongBorder() call, which causes "single" mode breakage.
2015-06-21DecoderThread: set Decoder::song_tag only for local filesMax Kellermann1-0/+1
If the song tag comes from a stream, and MPD playback restarts, MPD would believe the tag should override the newly received tag. This makes the previous tag appear stuck. This change passes the song tag only if it's authoritative - i.e. if it's a song file.
2015-06-20OutputControl: fix fail_timer check right after bootingRomain Rollet1-0/+2
Right after booting, the monotonic clock starts with a very small value, and AudioOutput::LockUpdate() may believe that the fail_timer has not recovered yet.
2015-06-20decoder/ffmpeg: skip unwanted samples after seekingMax Kellermann1-0/+2
When seeking to the beginning of a packet, skip the samples that come before the desired time stamp.
2015-06-19input/curl: trigger the condition variable in RequestDone()Max Kellermann1-0/+1
Fixes deadlock on small responses.
2015-05-29storage/nfs: fix deadlock when connectingThomas Guillem1-0/+2
The Connect method can be called between Schedule and lock. In that case, when locked, the state is already set to CONNECTING of READY and the condition won't be signaled anymore.
2015-05-29input/smbclient: fix DFF playbackjai1-0/+2
2015-03-25OpusEncoderPlugin: initialise granulepos so we end up with sane valuesMichal Nazarewicz1-0/+2
Not initialising granulepos leads to it having arbitrary values in the encoded stream including possibly negative values which are not valid and confuse opusdec. Explicitly initialise opus_encoder::granulepos to avoid that problem.
2015-03-25configure.ac: prepare for 0.19.10Max Kellermann1-0/+2
2015-02-06release v0.19.9Max Kellermann1-1/+1
2015-02-06release v0.18.23Max Kellermann1-1/+1
2015-02-06fs/io/FileOutputStream: don't auto-delete file on WIN32Max Kellermann1-0/+1
The file handle is never reset to INVALID_HANDLE_VALUE, and thus the destructor will assume the operation shall be cancelled and will delete the temporary file. This was a major breakage for saving the database file and the state file.
2015-02-06TagBuilder: allow adding duplicate tag types in Complement()Max Kellermann1-0/+1
Build a table of pre-existing tag types before adding new items. The old way would check HasType() each time, which would return true after the first instance of that tag type had been added, preventing duplicate tag types to be merged. This broke duplicate tag types loaded from the state file, because this code path uses TagBuilder::Complement().
2015-02-01NEWS: fix v0.18.22 release dateMax Kellermann1-1/+1
2015-01-31Makefile.am: move org_musicpd_Bridge.h to BUILT_SOURCESMax Kellermann1-0/+1
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-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-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-14release v0.19.8Max Kellermann1-1/+1
2015-01-14release v0.18.22Max Kellermann1-1/+1
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-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-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-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-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().