Max Kellermann 
							
						 
					 
					
						
						
							
						
						2f3f075e4f 
					 
					
						
						
							
							tag/Mask: wrap in class  
						
						
						
						
					 
					
						2017-02-08 09:04:45 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						17097d96b7 
					 
					
						
						
							
							db/{Count,Print}: use tag_print(), eliminate duplicate code  
						
						
						
						
					 
					
						2017-02-08 09:04:41 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a3e28c2d1a 
					 
					
						
						
							
							tag/Tag: move tag_name_parse() to ParseName.cxx  
						
						
						
						
					 
					
						2017-02-08 08:57:22 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						03a97d87ea 
					 
					
						
						
							
							tag/Tag*: rename several source files  
						
						
						
						
					 
					
						2017-02-08 08:49:42 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						8cbf099054 
					 
					
						
						
							
							tag/Id3Load: update API documentation  
						
						
						
						
					 
					
						2017-02-08 08:48:44 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						07ce915c66 
					 
					
						
						
							
							Merge branch 'v0.20.x'  
						
						
						
						
					 
					
						2017-02-08 08:45:24 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						53c14d97a6 
					 
					
						
						
							
							lib/nfs/FileReader: remove debug line  
						
						
						
						
					 
					
						2017-02-08 08:43:56 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						69a82eec17 
					 
					
						
						
							
							tag/TagId3: use AtScopeExit() for exception-safety  
						
						
						
						
					 
					
						2017-02-06 23:32:07 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						45cadef22f 
					 
					
						
						
							
							configure.ac: prepare for 0.20.5  
						
						
						
						
					 
					
						2017-02-06 23:28:36 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						73f58c57e8 
					 
					
						
						
							
							storage/curl: use CURLOPT_POSTFIELDS instead of CURLOPT_READFUNCTION  
						
						
						
						
					 
					
						2017-02-06 23:25:03 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						43348a3e13 
					 
					
						
						
							
							decoder/Control: improve locking in Start() and Seek()  
						
						... 
						
						
						
						Previously, both methods accessed a lot of attributes which require
mutex protection. 
						
						
					 
					
						2017-02-05 13:37:20 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						e716b1f4d7 
					 
					
						
						
							
							Client: remove redundant "virtual" keywords  
						
						
						
						
					 
					
						2017-02-03 22:27:11 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						82e74a4ebd 
					 
					
						
						
							
							Client: make client_vprintf() static  
						
						
						
						
					 
					
						2017-02-03 20:47:41 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						16b260e371 
					 
					
						
						
							
							Client: eliminate client_puts(), use Client::Write() instead  
						
						
						
						
					 
					
						2017-02-03 20:46:53 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						3102e05da4 
					 
					
						
						
							
							Client: make attributes "uid" and "num" const  
						
						
						
						
					 
					
						2017-02-03 20:41:31 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						df4af2b550 
					 
					
						
						
							
							Merge tag 'v0.20.4'  
						
						... 
						
						
						
						release v0.20.4 
						
						
					 
					
						2017-02-01 22:05:33 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						591afa0647 
					 
					
						
						
							
							lib/nfs/Connection: detect socket hangup and unregister from epoll  
						
						... 
						
						
						
						Fixes race condition when epoll_ctl() gets called after the socket has
been closed, which may affect a different socket created by another
thread meanwhile. 
						
						
					 
					
						2017-02-01 21:44:20 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						05eac20ffe 
					 
					
						
						
							
							lib/nfs/Connection: detect libnfs reconnect  
						
						... 
						
						
						
						When rpc_reconnect_requeue() gets called from inside nfs_service(),
the NfsInputStream can stall completely because the old socket has
been unregistered from epoll automatically, but the new one has never
been registered.  Therefore, nfs_service() will never be called again.
This kludge attempts to detect this condition by checking
nfs_which_events()==POLLOUT.
https://bugs.musicpd.org/view.php?id=4081  
						
						
					 
					
						2017-02-01 21:36:58 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						38d263ac19 
					 
					
						
						
							
							output/sndio: work around a libroar C++ incompatibility  
						
						... 
						
						
						
						Same as in commit e02d8ad8d2 
						
						
					 
					
						2017-02-01 19:53:23 +01:00 
						 
				 
			
				
					
						
							
							
								Thomas Zander 
							
						 
					 
					
						
						
							
						
						f71c204eef 
					 
					
						
						
							
							Correct method types to match Interface.hxx  
						
						
						
						
					 
					
						2017-01-31 21:22:02 +01:00 
						 
				 
			
				
					
						
							
							
								Thomas Zander 
							
						 
					 
					
						
						
							
						
						51147203be 
					 
					
						
						
							
							free() require cstdlib to be included  
						
						
						
						
					 
					
						2017-01-31 21:21:37 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						a931686317 
					 
					
						
						
							
							pcm/SampleFormat: workaround for GCC 4.9 "constexpr" bug  
						
						... 
						
						
						
						GCC 4.9 has incomplete C++14 support.  Specifically, it doesn't allow
switch/case in "constexpr" functions. 
						
						
					 
					
						2017-01-27 11:02:58 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						add953fb6e 
					 
					
						
						
							
							lib/curl/Global: decouple from the IOThread library  
						
						
						
						
					 
					
						2017-01-26 09:29:49 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						3854211694 
					 
					
						
						
							
							input/Plugin: pass EventLoop& to init()  
						
						... 
						
						
						
						Eliminate dependency on io_thread_get(). 
						
						
					 
					
						2017-01-26 09:26:25 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						58ac72f79d 
					 
					
						
						
							
							input/nfs: use NfsFileReader::GetEventLoop()  
						
						
						
						
					 
					
						2017-01-26 09:25:56 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						6d5904801e 
					 
					
						
						
							
							lib/nfs/FileReader: use nfs_get_event_loop()  
						
						... 
						
						
						
						Make sure we're using the same EventLoop as the NfsManager. 
						
						
					 
					
						2017-01-26 09:23:49 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						d4993c405e 
					 
					
						
						
							
							lib/nfs/Glue: add EventLoop& accessor  
						
						
						
						
					 
					
						2017-01-26 09:23:25 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						7af8e3937f 
					 
					
						
						
							
							lib/nfs/FileReader: use C++11 initializers  
						
						
						
						
					 
					
						2017-01-26 09:21:57 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f8eeded528 
					 
					
						
						
							
							input/async: pass EventLoop& to constructor  
						
						
						
						
					 
					
						2017-01-25 23:18:33 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						c3fa7e13cf 
					 
					
						
						
							
							input/Plugin: include cleanup  
						
						
						
						
					 
					
						2017-01-25 23:18:17 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						5c18b0a94d 
					 
					
						
						
							
							input/curl: use CurlGlobal::GetEventLoop()  
						
						
						
						
					 
					
						2017-01-25 23:16:56 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						ecbad638f1 
					 
					
						
						
							
							input/async: add method GetEventLoop()  
						
						
						
						
					 
					
						2017-01-25 23:15:52 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						611ce6e756 
					 
					
						
						
							
							lib/nfs/{FileReader,Glue}: pass EventLoop&  
						
						... 
						
						
						
						Eliminate dependency on io_thread_get(). 
						
						
					 
					
						2017-01-25 23:02:02 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						4140e9b857 
					 
					
						
						
							
							IOThread: make io_thread_run() static  
						
						
						
						
					 
					
						2017-01-25 23:00:31 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						8fd9d91974 
					 
					
						
						
							
							output/Plugin: pass EventLoop& to init()  
						
						... 
						
						
						
						Eliminate dependency on io_thread_get(). 
						
						
					 
					
						2017-01-25 22:54:41 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						d3f35dab1e 
					 
					
						
						
							
							output/ao: convert to class, make attributes private  
						
						
						
						
					 
					
						2017-01-25 10:46:09 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						487e2618cd 
					 
					
						
						
							
							output/ao: use AudioOutputWrapper  
						
						
						
						
					 
					
						2017-01-25 10:45:20 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						30d5186db4 
					 
					
						
						
							
							output/ao: use const_cast instead of the union hack  
						
						
						
						
					 
					
						2017-01-25 10:44:19 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						cbe59714d4 
					 
					
						
						
							
							output/solaris: convert to class, make attributes private  
						
						
						
						
					 
					
						2017-01-25 10:33:38 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						704a28ca17 
					 
					
						
						
							
							output/solaris: use AudioOutputWrapper  
						
						
						
						
					 
					
						2017-01-25 10:29:42 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						8d70d10aba 
					 
					
						
						
							
							output/httpd: use AudioOutputWrapper  
						
						
						
						
					 
					
						2017-01-25 10:05:08 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						ddd8b16f2b 
					 
					
						
						
							
							output/roar: use AudioOutputWrapper::Init()  
						
						
						
						
					 
					
						2017-01-25 10:05:08 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						b79ce77ec5 
					 
					
						
						
							
							output/Wrapper: add missing include  
						
						
						
						
					 
					
						2017-01-25 10:05:08 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						fead4bbfd9 
					 
					
						
						
							
							output/Plugin: convert pointers to references  
						
						
						
						
					 
					
						2017-01-25 09:48:59 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						68bb738af2 
					 
					
						
						
							
							input/alsa: use snd_pcm_?w_params_alloca()  
						
						
						
						
					 
					
						2017-01-25 08:47:20 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						6b968beede 
					 
					
						
						
							
							output/alsa: convert to class, make attributes private  
						
						
						
						
					 
					
						2017-01-24 23:08:16 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f68dd1bffb 
					 
					
						
						
							
							output/alsa: make AlsaSetup() an AlsaOutput method  
						
						
						
						
					 
					
						2017-01-24 23:06:33 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						f92b71ca99 
					 
					
						
						
							
							output/alsa: move code from AlsaSetup() to AlsaSetupSw()  
						
						
						
						
					 
					
						2017-01-24 23:05:29 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						2b79fe2d6a 
					 
					
						
						
							
							output/alsa: move code from AlsaSetup() to AlsaSetupHw()  
						
						
						
						
					 
					
						2017-01-24 22:48:48 +01:00 
						 
				 
			
				
					
						
							
							
								Max Kellermann 
							
						 
					 
					
						
						
							
						
						44dd9af276 
					 
					
						
						
							
							lib/upnp/Util: pass single delimiter character to stringToTokens()  
						
						
						
						
					 
					
						2017-01-23 19:34:55 +01:00