Max Kellermann 
							
						 
					 
					
						
						
							
						
						8830ea319f 
					 
					
						
						
							
							decoder/API: add noexcept  
						
						
						
						
					 
					
						2020-09-04 13:35:00 +02:00 
						 
				 
			
				
					
						
							
							
								Johann Uhrmann 
							
						 
					 
					
						
						
							
						
						38498d3ee2 
					 
					
						
						
							
							Removed duplicate check for negative song time  
						
						
						
						
					 
					
						2020-08-23 12:17:10 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						ddb524b6b2 
					 
					
						
						
							
							input/uring: add noexcept  
						
						
						
						
					 
					
						2020-08-14 16:45:00 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cbcdc73f9a 
					 
					
						
						
							
							system/ByteOrder: add noexcept  
						
						
						
						
					 
					
						2020-08-14 16:36:24 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4f6c54ecb3 
					 
					
						
						
							
							output/osx: catch kAudioDevicePropertyHogMode errors  
						
						... 
						
						
						
						Our AudioObjectGetPropertyDataT() wrapper throws exception on error,
and calling it from OSXOutput::Disable() can cause MPD crash due to
std::terminate().
Closes https://github.com/MusicPlayerDaemon/MPD/issues/932  
						
						
					 
					
						2020-08-14 16:33:43 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						dbdf782e59 
					 
					
						
						
							
							net/{Resolver,HostParser}: include <cstring>  
						
						... 
						
						
						
						Fixup after e4dad42ca1 
						
						
					 
					
						2020-07-23 17:40:29 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f102cbb613 
					 
					
						
						
							
							net/AllocatedSocketAddress: add missing forward declaration  
						
						
						
						
					 
					
						2020-07-23 17:40:29 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5522967286 
					 
					
						
						
							
							net/StaticSocketAddress: add IWYU pragma  
						
						
						
						
					 
					
						2020-07-23 17:40:29 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a2f42e6424 
					 
					
						
						
							
							time/ISO8601: use <cstdlib>  
						
						
						
						
					 
					
						2020-07-23 16:26:18 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						bdfe6c2c45 
					 
					
						
						
							
							lib/dbus/Values: use using instead of typedef  
						
						
						
						
					 
					
						2020-07-23 16:26:18 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5e1a2e2a93 
					 
					
						
						
							
							lib/dbus/Values: add uint32_t and uint64_t support  
						
						
						
						
					 
					
						2020-07-23 16:26:18 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						7376f31c97 
					 
					
						
						
							
							lib/dbus/Message: add noexcept  
						
						
						
						
					 
					
						2020-07-23 16:26:18 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						155fc8fa5a 
					 
					
						
						
							
							include cleanup  
						
						
						
						
					 
					
						2020-07-23 16:26:18 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						7daf80a0c0 
					 
					
						
						
							
							util/RuntimeError: add IWYU pragma  
						
						
						
						
					 
					
						2020-07-23 16:10:28 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						eb87c28225 
					 
					
						
						
							
							util/CharUtil: fix doc typo  
						
						
						
						
					 
					
						2020-07-23 16:08:52 +02:00 
						 
				 
			
				
					
						
							
							
								Rosen Penev 
							
						 
					 
					
						
						
							
						
						c876d6a51c 
					 
					
						
						
							
							lib/icu: fix build without libc iconv support  
						
						... 
						
						
						
						Need to check for it in iconv.h. Otherwise meson prefixes a __builtin variant in the check. 
						
						
					 
					
						2020-07-23 14:09:43 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						47f54b5650 
					 
					
						
						
							
							input/smbclient: close handle on stat error  
						
						
						
						
					 
					
						2020-07-20 22:43:49 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						fbfa1723e7 
					 
					
						
						
							
							lib/smbclient/Mutex: remove obsolete library  
						
						
						
						
					 
					
						2020-07-20 22:40:27 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a74140842c 
					 
					
						
						
							
							storage/smbclient: add Mutex attribute  
						
						... 
						
						
						
						This per-object Mutex replaces the global `smbclient_mutex`. 
						
						
					 
					
						2020-07-20 22:39:59 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f5a85a816c 
					 
					
						
						
							
							storage/smbclient: store SmbclientStorage reference  
						
						
						
						
					 
					
						2020-07-20 22:37:11 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						2a15fafbd7 
					 
					
						
						
							
							input/smbclient: remove mutex locking  
						
						... 
						
						
						
						This is no longer necessary with the new API. 
						
						
					 
					
						2020-07-20 22:34:56 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						2fc4802886 
					 
					
						
						
							
							neighbor/smbclient: remove mutex locking  
						
						... 
						
						
						
						This is no longer necessary with the new API. 
						
						
					 
					
						2020-07-20 22:32:59 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						bb3f487ee5 
					 
					
						
						
							
							lib/smbclient/Context: add global Mutex for smbc_{new,free}_context()  
						
						... 
						
						
						
						Preparing to replace `smbclient_mutex`, for finer-grained locking. 
						
						
					 
					
						2020-07-20 22:32:00 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						7d97d0ae87 
					 
					
						
						
							
							lib/smbclient/Init: move code to SmbclientContext::New()  
						
						... 
						
						
						
						We no longer need to call smbc_init() because we don't need the compat
layer anymore. 
						
						
					 
					
						2020-07-20 22:23:18 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f6dc9bcad6 
					 
					
						
						
							
							*/smbclient: use the new API with SMBCCTX parameter  
						
						... 
						
						
						
						As a side effect, the input plugin closes the SMB/CIFS connection
after closing the file.
This solves one part of
https://github.com/MusicPlayerDaemon/MPD/issues/916  
						
						
					 
					
						2020-07-20 22:05:05 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						697531a948 
					 
					
						
						
							
							lib/smbclient/Context: new wrapper for SMBCCTX  
						
						
						
						
					 
					
						2020-07-20 22:01:10 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						3c745b4bc6 
					 
					
						
						
							
							neighbor/smbclient: remove obsolete commented code  
						
						
						
						
					 
					
						2020-07-20 18:13:38 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						448b397cb8 
					 
					
						
						
							
							output/sles: support floating point samples  
						
						... 
						
						
						
						According to https://developer.android.com/ndk/guides/audio/opensl/android-extensions 
This feature was mentioned in https://github.com/MusicPlayerDaemon/MPD/issues/922  
						
						
					 
					
						2020-07-20 15:23:50 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						64a1386eb6 
					 
					
						
						
							
							output/sles: move SampleFormat selection to switch/case block  
						
						
						
						
					 
					
						2020-07-20 14:47:36 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cf674e9273 
					 
					
						
						
							
							input/Init: downgrade PluginUnconfigured to LogLevel::DEBUG  
						
						... 
						
						
						
						`LogLevel::INFO` is logged by default, but this message shall only
appear with `--verbose`.
This finally solves https://github.com/MusicPlayerDaemon/MPD/issues/430  
						
						
					 
					
						2020-07-16 13:19:14 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						b74a91427d 
					 
					
						
						
							
							Merge tag 'v0.21.25'  
						
						... 
						
						
						
						release v0.21.25 
						
						
					 
					
						2020-07-06 21:47:30 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						00789de7d4 
					 
					
						
						
							
							db/upnp/Object: root nodes are allowed to omit parent_id and name  
						
						... 
						
						
						
						This fixes compatibility with Plex DLNA.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/851  
						
						
					 
					
						2020-07-06 21:36:30 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						9964a5ffe8 
					 
					
						
						
							
							db/update/Service: avoid copying the mount point path  
						
						
						
						
					 
					
						2020-07-06 21:09:58 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5ece9685c2 
					 
					
						
						
							
							PluginUnavailable: backport class PluginUnconfigured from master  
						
						... 
						
						
						
						Stop bothering people about the Tidal/Qobuz plugins. 
						
						
					 
					
						2020-07-06 21:08:22 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e7c5a42821 
					 
					
						
						
							
							Log: add Log() and LogFormat() overloads with std::exception_ptr  
						
						... 
						
						
						
						Make LogError()/FormatError() wrappers for those.  Now we can log
exceptions with a lower level. 
						
						
					 
					
						2020-07-06 21:08:04 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						36e6079c57 
					 
					
						
						
							
							Log: make LogLevel the first parameter  
						
						... 
						
						
						
						Prepare for templated functions. 
						
						
					 
					
						2020-07-06 21:07:26 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e5f23678ca 
					 
					
						
						
							
							Log: use GetFullMessage() to print exceptions  
						
						... 
						
						
						
						Print all nested exceptions on a single line to avoid confusion. 
						
						
					 
					
						2020-07-06 21:07:16 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						c3cfb5fe16 
					 
					
						
						
							
							Merge branch 'v0.21.x'  
						
						
						
						
					 
					
						2020-07-06 20:56:52 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						749ad7cd83 
					 
					
						
						
							
							PluginUnavailable: inherit the base class constructor  
						
						
						
						
					 
					
						2020-07-06 20:40:25 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						fe48e5596f 
					 
					
						
						
							
							command/storage: automatically scan new mounts  
						
						... 
						
						
						
						Closes https://github.com/MusicPlayerDaemon/MPD/issues/841  
						
						
					 
					
						2020-07-06 20:23:41 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						d7744d2b8e 
					 
					
						
						
							
							command/storage: check if storage is already mounted  
						
						... 
						
						
						
						Mounting one storage URI twice on different mount points can lead to
conflicts with the database cache file, and it doesn't make a lot of
sense.
But most importantly, our udisks storage plugin will unmount the disk
from the kernel VFS, and if two exist, they will compete with each
others.  We could (and should) fix this in the udisks storage plugin,
but for now, this workaround is good enough (and useful). 
						
						
					 
					
						2020-07-06 18:02:47 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						33ee35ab92 
					 
					
						
						
							
							command/storage: check if mount point is busy  
						
						... 
						
						
						
						When mounting something over a directory that is already a mount
point, CompositeStorage::Mount() silently overwrites the previously
mounted storage, disposing it.  After that, SimpleDatabase::Mount()
will fail and handle_mount() will roll back the
CompositeStorage::Mount() command, effectively unmounting what was
there before (and also leaking memory).
Closes https://github.com/MusicPlayerDaemon/MPD/issues/918  
						
						
					 
					
						2020-07-06 17:49:38 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5b291ff768 
					 
					
						
						
							
							db/update/Walk: pass concatenated .mpdignore URI to storage.MapUTF8()  
						
						... 
						
						
						
						Fixes the "Unrecognized URI" error with the udisks storage plugin,
which is caused by the kludge in UdisksStorage::MapUTF8(). 
						
						
					 
					
						2020-07-06 17:19:38 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						39d6816a6d 
					 
					
						
						
							
							neighbor/upnp: roll back changes if DoOpen() fails  
						
						
						
						
					 
					
						2020-07-06 16:23:58 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						6517b2d2ac 
					 
					
						
						
							
							neighbor/upnp: remove D-Bus filter and match in Close()  
						
						... 
						
						
						
						Fixes use-after-free crash bug during MPD shutdown. 
						
						
					 
					
						2020-07-06 16:15:18 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						bfdf13dca3 
					 
					
						
						
							
							decoder/Plugin: allow scan_{file,stream}() to throw  
						
						... 
						
						
						
						Bug #915  is about an I/O exception thrown where none was allowed,
leading to crash via std::terminate().  However, instead of catching
and logging the error inside the decoder plugin, it should be able to
propagate the I/O error to the MPD core, so MPD can avoid trying other
decoder plugins.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/915  
						
						
					 
					
						2020-07-06 14:13:34 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						86823af685 
					 
					
						
						
							
							Merge branch 'v0.21.x'  
						
						
						
						
					 
					
						2020-07-02 15:34:16 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						daefc61aa4 
					 
					
						
						
							
							output/osx: postpone start until the end of Play()  
						
						... 
						
						
						
						Wait until there is data in the ring buffer. 
						
						
					 
					
						2020-07-02 15:26:38 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						6fed6e50e4 
					 
					
						
						
							
							output/osx: merge some duplicate code  
						
						
						
						
					 
					
						2020-07-02 15:25:51 +02:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						bc9e074822 
					 
					
						
						
							
							output/osx: postpone start until the first Play() call  
						
						... 
						
						
						
						Wait until there is some data; don't let our render callback be
invoked without any data. 
						
						
					 
					
						2020-07-02 15:21:54 +02:00