Max Kellermann
a34dfd55be
util/HugeAllocator: remove deprepcated dynamic exception specifications
2017-01-04 10:32:21 +01:00
Max Kellermann
609c1d4d4c
m4: update various scripts from autoconf-archive
2017-01-04 10:19:27 +01:00
Max Kellermann
c12fe09969
Makefile.am: update header files
...
Problems found by "make distcheck".
2017-01-04 10:15:44 +01:00
Eugene Baklanov
bd14afe347
Fix for priority order bug if reordering in SetRandom()
...
Fix for the problem where order with priorities gets out of whack in case it's
reordered by SetRandom() while another song is currently playing.
What happens is, if some song is already playing and you have set some
priorities before switching on the random mode, and then turn the mode on, the
original code swaps position of the first song in the order (i.e., the highest
priority song) with current, so that current is 0 (which it should be). The
problem is, the "original" first song then goes to the place "current" song was
after reordering, wherever that is, instead of going after the "current" song.
This patch fixes the issue.
Also the fix makes MoveOrder() public, because why shouldn't it be, anyway. It
certainly makes more sense than just having SwapOrders() public for some
reason.
Signed-off-by: Eugene Baklanov <miltenfiremage@gmail.com>
2017-01-04 10:10:27 +01:00
Max Kellermann
f445a13051
Makefile.am: updated web server documentation path
2017-01-04 10:09:24 +01:00
Max Kellermann
8ddf607d9f
doc/user: add brief "troubleshooting" chapter
2017-01-04 08:04:20 +01:00
Max Kellermann
5900253b85
update copyright year
2017-01-03 20:48:59 +01:00
Max Kellermann
ccec94925f
doc/user: tilde expansion
2017-01-03 20:43:14 +01:00
Max Kellermann
4504a9d0b5
doc/user: new section about stored playlists
2017-01-03 20:42:19 +01:00
Max Kellermann
057f98ad45
doc/user: new section about external mixer
2017-01-03 20:37:25 +01:00
Max Kellermann
3b1c9aa026
doc/user: audio_output/enabled is stored in state_file
2017-01-03 20:29:38 +01:00
Max Kellermann
658397dc38
doc/user: mention that more than one audio_output is possible
2017-01-03 20:28:50 +01:00
Max Kellermann
0cd1c8e23e
doc/user: mention more plugins
2017-01-03 20:27:22 +01:00
Max Kellermann
0345c1e6f8
doc/user: more general documentation about the configuration file
2017-01-03 20:15:23 +01:00
Max Kellermann
f6c4cda0d4
python/libs: upgrade FLAC to 1.3.2
2017-01-03 15:04:07 +01:00
Max Kellermann
39fd713b91
Main: invoke UpdateEffectiveReplayGainMode() after output init
...
Forward the configured ReplayGainMode to all outputs and decoders.
2017-01-03 13:44:38 +01:00
Max Kellermann
31d77ec580
input/curl, ...: use strncmp() instead of memcmp() to avoid crash
2017-01-03 13:17:02 +01:00
Max Kellermann
06116382ee
input/curl: move code to class CurlRequest
...
The CurlRequest gives us a more low-level API to CURL without the
InputStream interface, integrated into our IOThread.
2017-01-03 12:24:05 +01:00
Max Kellermann
d2046de193
test/run_input, ...: RAII-style global initialization
2017-01-03 12:24:05 +01:00
Max Kellermann
4397fe3a13
input/curl: fold input_curl_easy_add_indirect() into the only caller
2017-01-03 10:53:20 +01:00
Max Kellermann
534e1fa6eb
input/curl: move code to SeekInternal(), simplify DoSeek()
...
Simplifies the code and reduces the number of IOThread roundtrips.
2017-01-03 10:50:02 +01:00
Max Kellermann
3e8cc2c670
input/curl: move class CurlGlobal to separate source file
2017-01-03 10:50:02 +01:00
Max Kellermann
3c565baf9d
output/Source: clear current_chunk in Close()
...
Fixes assert failure after unpausing.
2017-01-03 10:50:02 +01:00
Max Kellermann
2e182e84c3
thread/Mutex: remove ScopeLock, use std::lock_guard directly
2017-01-03 07:11:57 +01:00
Max Kellermann
a42021655c
thread/Cond: make the integer-based timed_wait() overload private
...
Make sure this deprecated API is not used.
2017-01-03 07:07:10 +01:00
Max Kellermann
2498a2b0bd
thread/Mutex: use std::lock_guard instead of std::unique_lock
...
We need purely RAII-style, and this is std::lock_guard.
2017-01-03 06:56:24 +01:00
Max Kellermann
4484411a77
output/Internal: add various trivial getter methods
2016-12-29 23:28:54 +01:00
Max Kellermann
61a151c803
output/State: add missing mutex lock
2016-12-29 23:28:46 +01:00
Max Kellermann
5149c950aa
output/Multiple: add missing mutex lock
2016-12-29 23:28:46 +01:00
Max Kellermann
18f4d846c9
output/Internal: make the Mutex mutable
2016-12-29 23:28:37 +01:00
Max Kellermann
db95aa250d
output/Control: pass "force" flag to LockUpdate()
...
Reduce overhead by eliminating MultipleOutputs::ResetReopen().
2016-12-29 23:20:26 +01:00
Max Kellermann
982d1bf662
output/Init: convert audio_output_setup() to method
2016-12-29 22:59:03 +01:00
Max Kellermann
a0393e9ddf
python/libs: upgrade Boost to 1.63
2016-12-29 21:55:20 +01:00
Max Kellermann
a8d6328bd4
python/build/libs: upgrade CURL to 7.52.1
2016-12-29 21:50:35 +01:00
Max Kellermann
13dab13319
python/build/libs: upgrade FFmpeg to 3.2.2
2016-12-29 21:46:13 +01:00
Max Kellermann
c623aa0f06
python/build/verify: support SHA-1 and SHA-256
2016-12-29 21:45:37 +01:00
Max Kellermann
79403afbe6
python/build/verify: prepare SHA support
2016-12-29 21:43:47 +01:00
Max Kellermann
4c650e87fa
python/build/verify: add verify_file_digest()
2016-12-29 21:40:54 +01:00
Max Kellermann
3dde62befe
python/build/verify: move code to file_digest()
2016-12-29 21:33:36 +01:00
Max Kellermann
8bfabbe265
python/build/verify: move code to feed_file()
2016-12-29 21:33:12 +01:00
Max Kellermann
e334b16aaa
python/build/download: move file_md5() to verify.py
2016-12-29 21:32:28 +01:00
Max Kellermann
5626ace245
python/build/download: raise RuntimeError
2016-12-29 21:21:58 +01:00
Max Kellermann
52652cb609
command/{Player,Error}: extract messages from nested exceptions
2016-12-29 14:46:13 +01:00
Max Kellermann
256f40d4f5
output/Multiple: obtain detailed error information in Open()
2016-12-29 14:46:13 +01:00
Max Kellermann
ef9acc54ec
output/Internal: remember the most recent error
2016-12-29 14:21:12 +01:00
Max Kellermann
a9f2d25957
output/Thread: unify exception handling
2016-12-29 14:10:37 +01:00
Max Kellermann
6fc47fbb69
thread/Mutex: make ScopeLock an alias for std::unique_lock
2016-12-29 11:53:24 +01:00
Max Kellermann
9c11184238
thread/Mutex: use std::unique_lock to implement ScopeLock
2016-12-29 11:51:25 +01:00
Max Kellermann
a421c1dbfb
notify: use C++11 initializer
2016-12-29 11:41:22 +01:00
Max Kellermann
7ec707927d
lib/nfs/Blocking, neighbor/smbclient: pass std::chrono::duration to Cond::timed_wait()
2016-12-29 11:37:18 +01:00