Max Kellermann 
							
						 
					 
					
						
						
							
						
						6682cf749f 
					 
					
						
						
							
							playlist/cue/parser: use lambda to fix ambiguous overload  
						
						 
						
						... 
						
						
						
						On Windows, there is an IsWhitespaceOrNull() overload with TCHAR, and
the compiler doesn't know which one to pass to std::find_if(). 
						
						
							
						
					 
					
						2020-10-05 21:15:10 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						492607ecbe 
					 
					
						
						
							
							playlist/cue/parser: use StringView internally  
						
						 
						
						... 
						
						
						
						Don't copy the input StringView. 
						
						
							
						
					 
					
						2020-10-05 21:04:49 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e0c75da266 
					 
					
						
						
							
							playlist/cue/parser: pass StringView to Feed()  
						
						 
						
						
						
						
							
						
					 
					
						2020-10-05 20:33:58 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						34bb53a29f 
					 
					
						
						
							
							playlist/cue/parser: add noexcept  
						
						 
						
						
						
						
							
						
					 
					
						2020-10-05 20:33:50 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cb4fdac469 
					 
					
						
						
							
							playlist/cue/parser: fix nullptr dereference  
						
						 
						
						... 
						
						
						
						Closes https://github.com/MusicPlayerDaemon/MPD/issues/974  
						
						
							
						
					 
					
						2020-10-05 20:26:42 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						ac46a84391 
					 
					
						
						
							
							playlist/cue/parser: fix off-by-one buffer overflow  
						
						 
						
						... 
						
						
						
						cue_next_word() can return a pointer one past the end of the string if
the word is followed by the terminating null byte. 
						
						
							
						
					 
					
						2020-10-05 20:26:02 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						dffd5831f8 
					 
					
						
						
							
							test/fuzzer: a simple fuzzer using libFuzzer  
						
						 
						
						... 
						
						
						
						This commit adds some basic infrastructure for fuzzers, and adds a
fuzzer for the CUE sheet parser. 
						
						
							
						
					 
					
						2020-10-05 20:25:26 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						8358b34efa 
					 
					
						
						
							
							meson_options.txt: move "test" to a new section  
						
						 
						
						
						
						
							
						
					 
					
						2020-10-05 19:44:52 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4484d7a5c2 
					 
					
						
						
							
							output/jack: implement Interrupt()  
						
						 
						
						
						
						
							
						
					 
					
						2020-10-02 11:00:04 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						b80a135cf3 
					 
					
						
						
							
							output/pulse: implement Interrupt()  
						
						 
						
						
						
						
							
						
					 
					
						2020-10-02 10:52:25 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4ad525d939 
					 
					
						
						
							
							output/alsa: implement Interrupt()  
						
						 
						
						... 
						
						
						
						This allows canceling the blocking method LockWaitWriteAvailable(),
and thus allows breaking free of misbehaving ALSA drivers, avoiding a
MPD lockup.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/966  
						
						
							
						
					 
					
						2020-10-02 10:35:18 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4cb5e69811 
					 
					
						
						
							
							output/Interface: add virtual method Interrupt()  
						
						 
						
						... 
						
						
						
						This allows interrupting the output thread (for some plugins which
implement this method).  This way, operations can be canceled
properly, instead of waiting for some external entity. 
						
						
							
						
					 
					
						2020-10-02 10:20:39 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						b0596291a8 
					 
					
						
						
							
							output/Thread: simplify the main loop switch  
						
						 
						
						... 
						
						
						
						Move the InternalPlay() call and the wake_cond.wait() call into the
`case Command::NONE` and revert all `continue` statements to a simple
`break`. 
						
						
							
						
					 
					
						2020-10-02 10:10:53 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						8f0a1a5d82 
					 
					
						
						
							
							output/Interface: add noexcept  
						
						 
						
						
						
						
							
						
					 
					
						2020-10-01 20:44:14 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						c0775d328c 
					 
					
						
						
							
							output/Filtered: move try/catch from IteratePause() to caller  
						
						 
						
						
						
						
							
						
					 
					
						2020-10-01 20:44:11 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4ca2c33181 
					 
					
						
						
							
							doc/meson.build: check both html_manual and manpages  
						
						 
						
						... 
						
						
						
						Closes https://github.com/MusicPlayerDaemon/MPD/issues/960  
						
						
							
						
					 
					
						2020-09-30 12:11:20 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						362f391b76 
					 
					
						
						
							
							Merge remote-tracking branches 'neheb/defa', 'neheb/auto' and 'neheb/clocale' into master  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-30 11:48:05 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Rosen Penev 
							
						 
					 
					
						
						
							
						
						980e32f69c 
					 
					
						
						
							
							remove clocale test  
						
						 
						
						... 
						
						
						
						clocale is part of C++11.
In practical terms, gcc's libstdc++ comes with its own locale defines
when the libc does not have them.
Also reworked to be dependent on !ANDROID.
Signed-off-by: Rosen Penev <rosenp@gmail.com > 
						
						
							
						
					 
					
						2020-09-29 14:51:17 -07:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Rosen Penev 
							
						 
					 
					
						
						
							
						
						dd639e18b8 
					 
					
						
						
							
							clang-tidy: remove pointless std::move  
						
						 
						
						... 
						
						
						
						Found with performance-move-const-arg
Signed-off-by: Rosen Penev <rosenp@gmail.com > 
						
						
							
						
					 
					
						2020-09-26 21:34:25 -07:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Rosen Penev 
							
						 
					 
					
						
						
							
						
						c883f178b8 
					 
					
						
						
							
							clang-tidy: use auto  
						
						 
						
						... 
						
						
						
						Found with modernize-use-auto
Signed-off-by: Rosen Penev <rosenp@gmail.com > 
						
						
							
						
					 
					
						2020-09-26 21:33:35 -07:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						65d257675f 
					 
					
						
						
							
							increment version number to 0.22.1  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-23 16:15:44 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						56fa7368e8 
					 
					
						
						
							
							release v0.22  
						
						 
						
						
						
						
							
  v0.22
 
						
					 
					
						2020-09-23 15:26:51 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e9df4116fd 
					 
					
						
						
							
							db/upnp: store UPnPDirContent in local variable  
						
						 
						
						... 
						
						
						
						Fixes use-after-free because the temporary goes out of scope. 
						
						
							
						
					 
					
						2020-09-23 15:25:39 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5492304254 
					 
					
						
						
							
							meson.build: drop obsolete warning flag -Wno-noexcept-type  
						
						 
						
						... 
						
						
						
						We don't support GCC 7 anymore. 
						
						
							
						
					 
					
						2020-09-23 15:13:19 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						416d4e4433 
					 
					
						
						
							
							NEWS: update recommended compilers  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-23 15:12:17 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						eae2863286 
					 
					
						
						
							
							doc/user.rst: add GitHub link  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-23 15:11:00 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						39bc196f64 
					 
					
						
						
							
							doc/user.rst: move download link to downloads page  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-23 15:07:50 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						157dfa320f 
					 
					
						
						
							
							doc: improve manpage markup  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-23 15:04:22 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						9b4f2ac79b 
					 
					
						
						
							
							doc/meson.build: kludge to fix manpage installation directory  
						
						 
						
						... 
						
						
						
						Ugly workaround for https://github.com/mesonbuild/meson/issues/1550  
						
						
							
						
					 
					
						2020-09-23 14:47:43 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						c843bce9f5 
					 
					
						
						
							
							LogLevel: rename DEFAULT to NOTICE  
						
						 
						
						... 
						
						
						
						"DEFAULT" is a bad name - all it says is that it's the default value,
but it doesn't say what it means.  The name NOTICE mimics the syslog
level. 
						
						
							
						
					 
					
						2020-09-23 14:22:33 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e3106a019d 
					 
					
						
						
							
							LogInit: provide mappings for LogLevel::{ERROR,WARNING}  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-23 14:17:11 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						3e0ceb12d5 
					 
					
						
						
							
							LogInit: rename "secure" to "info"  
						
						 
						
						... 
						
						
						
						Calling this "secure" never made sense.  Messages about client
connects are just a small part of what gets logged as "secure",
a.k.a. "info". 
						
						
							
						
					 
					
						2020-09-23 14:15:58 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						050adf6640 
					 
					
						
						
							
							doc: rewrite the log_level documentation  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-23 14:14:54 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						60bbc9f626 
					 
					
						
						
							
							LogInit: use StringIsEqual()  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-23 13:28:19 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						065926d6a4 
					 
					
						
						
							
							decoder/ffmpeg: support album art  
						
						 
						
						... 
						
						
						
						Closes https://github.com/MusicPlayerDaemon/MPD/issues/892  
						
						
							
						
					 
					
						2020-09-23 12:50:28 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						85bab67083 
					 
					
						
						
							
							input/uring: safe cancellation  
						
						 
						
						... 
						
						
						
						My concept with `class CancellableOperation` doesn't work properly,
because the kernel may continue to write to the given buffer as soon
as the read finishes.
To fix this, this commit adds `class ReadOperation` which owns the
buffer and the `struct iovec`.  Instances of this class persist until
the read really finishes, even if the operation is canceled. 
						
						
							
						
					 
					
						2020-09-23 11:07:26 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4001379663 
					 
					
						
						
							
							io/uring/Operation: add method ReplaceUring()  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-22 21:50:48 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						382273abc5 
					 
					
						
						
							
							io/uring/Operation: add API documentation  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-22 21:49:48 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						85af4d6916 
					 
					
						
						
							
							meson.build: add -Wdouble-promotion  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-22 20:40:53 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						6825e1144e 
					 
					
						
						
							
							net/SocketError: work around -Wvla by defining a constexpr variable  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-22 20:40:53 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						45f8449c72 
					 
					
						
						
							
							doc/user.rst: change C++14 to C++17  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-22 20:40:49 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						71bf1a8a3d 
					 
					
						
						
							
							doc/protocol.rst: improve "pause" documentation  
						
						 
						
						... 
						
						
						
						And un-deprecate "pause" without parameter (toggles pause).  I have no
idea why it was deprecated long ago; the deprecation notice was copied
from the ancient MPD wiki.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/944  
						
						
							
						
					 
					
						2020-09-22 20:16:02 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						bc47a16943 
					 
					
						
						
							
							Merge tag 'v0.21.26' into master  
						
						 
						
						... 
						
						
						
						release v0.21.26 
						
						
							
						
					 
					
						2020-09-21 15:20:02 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						566787f041 
					 
					
						
						
							
							release v0.21.26  
						
						 
						
						
						
						
							
  v0.21.26
 
						
					 
					
						2020-09-21 15:14:43 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						79b2366387 
					 
					
						
						
							
							archive/iso9660: fix odd seeking bug (assertion failure)  
						
						 
						
						... 
						
						
						
						Skip the beginning of a sector if the last seek was odd, and clear the
buffer on seek. 
						
						
							
						
					 
					
						2020-09-21 15:11:21 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5acea014b0 
					 
					
						
						
							
							archive/iso9660: remove unused macro CEILING()  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-21 15:11:17 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5130acf3ea 
					 
					
						
						
							
							decoder/ffmpeg: implement protocols() and uri_decode() (for RTSP)  
						
						 
						
						... 
						
						
						
						This implements the feature that was missing/broken in this bug
report: https://github.com/MusicPlayerDaemon/MPD/issues/930  
						
						
							
						
					 
					
						2020-09-21 14:57:12 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a22d1c88d7 
					 
					
						
						
							
							decoder/ffmpeg: pass InputStream by pointer  
						
						 
						
						... 
						
						
						
						Prepare for an implementation without InputStream. 
						
						
							
						
					 
					
						2020-09-21 14:53:18 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						85849c9396 
					 
					
						
						
							
							decoder/plugin: add method protocols()  
						
						 
						
						... 
						
						
						
						Similar to commit 4e2a551f30  but for
decoder plugins.  This is tailored for the FFmpeg decoder plugin which
implements some protocols (e.g. RTSP) as demuxer plugin. 
						
						
							
						
					 
					
						2020-09-21 14:53:18 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						d3c257d97d 
					 
					
						
						
							
							CommandLine: reindent lambdas  
						
						 
						
						
						
						
							
						
					 
					
						2020-09-21 14:52:45 +02:00