Max Kellermann
|
90c8a1b1cf
|
input/archive: use AtScopeExit() for exception-safety
|
2016-09-09 16:32:11 +02:00 |
|
Max Kellermann
|
3143dbf3dc
|
input/Open: use ScopeLock
|
2016-09-09 16:11:51 +02:00 |
|
Max Kellermann
|
38d587aaeb
|
decoder/wavpack: wavpack_open_wvc() returns InputStreamPtr
Let std::unique_ptr manage both the InputStream and the WavpackInput.
|
2016-09-09 16:04:57 +02:00 |
|
Max Kellermann
|
fe9bafa741
|
decoder/wavpack: use AtScopeExit() for exception-safety
|
2016-09-09 15:55:58 +02:00 |
|
Max Kellermann
|
8092e18158
|
input/async: add attribute "postponed_exception"
Will replace "postponed_error".
|
2016-09-09 15:41:09 +02:00 |
|
Max Kellermann
|
6ed77f2a27
|
input/Plugin: migrate init() from class Error to C++ exceptions
|
2016-09-09 15:16:47 +02:00 |
|
Max Kellermann
|
a73688a2be
|
input/Plugin: remove InitResult::UNAVAILABLE, throw PluginUnavailable instead
|
2016-09-09 15:11:52 +02:00 |
|
Max Kellermann
|
e7d327226a
|
mixer: migrate to C++ exceptions
|
2016-09-09 14:44:15 +02:00 |
|
Max Kellermann
|
ae1eb9ccde
|
pcm/Convert: migrate from class Error to C++ exceptions
|
2016-09-09 14:44:13 +02:00 |
|
Max Kellermann
|
860064c812
|
output/pulse: use a RTTI lock guard
Make all the locks exception-safe.
|
2016-09-09 14:36:24 +02:00 |
|
Max Kellermann
|
845901ab01
|
decoder/Internal: convert error from Error to std::exception_ptr
|
2016-09-08 20:56:05 +02:00 |
|
Max Kellermann
|
25f7360264
|
decoder/Thread: throw InputStream::Open() errors
Code simplification.
|
2016-09-08 20:54:55 +02:00 |
|
Max Kellermann
|
78ec7d0fe1
|
decoder/Thread: throw StopDecoder on DecoderCommand::STOP
|
2016-09-08 20:54:55 +02:00 |
|
Max Kellermann
|
a1e9678b69
|
decoder/Thread: std::throw_with_nested() to wrap caught exception
|
2016-09-08 20:54:55 +02:00 |
|
Max Kellermann
|
be5d629c13
|
Log: recognize class Error as nested exception
|
2016-09-08 20:54:55 +02:00 |
|
Max Kellermann
|
957b399e90
|
decoder/Thread: call FlushChunk() using AtScopeExit()
Be exception-safe.
|
2016-09-08 20:41:44 +02:00 |
|
Max Kellermann
|
5e6c164b9f
|
decoder/Internal: use C++11 initializers
|
2016-09-08 20:34:39 +02:00 |
|
Max Kellermann
|
5d9a889190
|
decoder/Thread: throw C++ exceptions on error
|
2016-09-08 20:26:40 +02:00 |
|
Max Kellermann
|
a9acc9c971
|
decoder/Thread: catch C++ exceptions from the decoder plugin
|
2016-09-08 19:24:15 +02:00 |
|
Max Kellermann
|
308010794a
|
decoder/Control: convert error from Error to std::exception_ptr
Prepare full C++ exception support in the decoder thread.
|
2016-09-08 17:16:03 +02:00 |
|
Max Kellermann
|
0ce72cbf9d
|
player/Control: convert error from Error to std::exception_ptr
Prepare full C++ exception support in the player thread.
|
2016-09-08 12:15:14 +02:00 |
|
Max Kellermann
|
6e52ab285a
|
player/Control: use class Error as C++ exception, throw it
|
2016-09-08 12:07:22 +02:00 |
|
Max Kellermann
|
3da4648112
|
command/Player: restore "single" mode using AtScopeExit()
|
2016-09-08 12:07:22 +02:00 |
|
Max Kellermann
|
1897409476
|
player/Control: update API documentation
|
2016-09-08 12:07:22 +02:00 |
|
Max Kellermann
|
c60d65dd8f
|
command/All: catch class Error
|
2016-09-08 12:07:22 +02:00 |
|
Max Kellermann
|
f29949e14d
|
command/Error: support class Error as C++ exception
|
2016-09-08 10:34:02 +02:00 |
|
Max Kellermann
|
75aa98ddaa
|
command/Error: merge the two try/catch blocks
|
2016-09-08 10:34:02 +02:00 |
|
Max Kellermann
|
06909f4f00
|
util/Error: remove explicit move constructor, allow copying
The C++ compiler will auto-generate move and copy
constructors/operators for us.
|
2016-09-08 10:34:02 +02:00 |
|
Max Kellermann
|
aca081557a
|
queue/PlaylistControl: use PlaylistError::NotPlaying()
|
2016-09-05 20:37:24 +02:00 |
|
Max Kellermann
|
a71efacd1e
|
queue/PlaylistControl: fix return value in PlayNext(), PlayPrevious()
Failure must be indicated by returning false.
|
2016-09-05 19:21:23 +02:00 |
|
Max Kellermann
|
871063dab7
|
neighbor/Plugin: migrate from class Error to C++ exceptions
|
2016-09-05 11:37:58 +02:00 |
|
Max Kellermann
|
135662d6b0
|
lib/smbclient/Init: throw std::runtime_error on error
|
2016-09-05 11:32:20 +02:00 |
|
Max Kellermann
|
a69c3c1848
|
neighbor/Glue: support C++ exceptions
|
2016-09-05 11:31:23 +02:00 |
|
Max Kellermann
|
50e5244e25
|
input/Init: support C++ exceptions
|
2016-09-05 11:28:05 +02:00 |
|
Max Kellermann
|
1c07f197de
|
Filter/Plugin: migrate from class Error to C++ exceptions
|
2016-09-04 20:07:05 +02:00 |
|
Max Kellermann
|
13c32111a0
|
Filter/Internal: migrate from class Error to C++ exceptions
|
2016-09-04 19:38:41 +02:00 |
|
Max Kellermann
|
28c6975732
|
filter/AutoConvert: use std::unique_ptr
|
2016-09-04 19:36:50 +02:00 |
|
Max Kellermann
|
12091fcfb1
|
thread/Util: throw exception on error
|
2016-09-04 15:15:11 +02:00 |
|
Max Kellermann
|
5598826eaf
|
thread/Util: un-inline the functions
Reduce header clutter.
|
2016-09-04 15:11:56 +02:00 |
|
Max Kellermann
|
3fea624cca
|
output/Thread: use Close() after error in ReopenFilter()
Now that CloseFilter() may be called again, we can reduce code
duplication.
|
2016-09-04 15:09:51 +02:00 |
|
Max Kellermann
|
9007dd9ab7
|
output/Thread: clear Filter pointers in CloseFilter()
This allows calling CloseFilter() multiple times.
|
2016-09-04 15:09:05 +02:00 |
|
Max Kellermann
|
08166cf330
|
output/Internal: initialize the Filter pointers
With the configuration "replay_gain_handler none", the Filter pointers
are never initialized, which can crash MPD.
https://bugs.musicpd.org/view.php?id=4571
|
2016-09-04 15:05:42 +02:00 |
|
Max Kellermann
|
e51b6a6233
|
Filter/Internal: remove outdated API documentation
|
2016-09-04 14:42:27 +02:00 |
|
Max Kellermann
|
3887465d80
|
Log: add FormatError() overload with std::exception
|
2016-09-04 14:34:47 +02:00 |
|
Max Kellermann
|
d84f96a571
|
fs/io/FileOutputStream: add mode CREATE_VISIBLE
|
2016-09-04 13:16:37 +02:00 |
|
Max Kellermann
|
f600e226da
|
fs/io/FileOutputStream: add mode APPEND_OR_CREATE
|
2016-09-04 13:16:33 +02:00 |
|
Max Kellermann
|
d775f13a03
|
fs/io/FileOutputStream: merge all classes into one, add enum Mode
Prepare to add more modes.
|
2016-09-04 12:57:41 +02:00 |
|
Max Kellermann
|
b630afdeda
|
fs/io/BufferedOutputStream: add wchar_t overloads
|
2016-09-04 12:57:41 +02:00 |
|
Max Kellermann
|
c39c259078
|
fs/io/BufferedOutputStream: add Write(char)
|
2016-09-04 12:57:41 +02:00 |
|
Max Kellermann
|
a571c4ba33
|
tag/Item: remove "packed" attribute, add static_assert on alignment instead
The "packed" attribute triggers a clang 4.0 warning, and it's not
necessary. All we want is correct allocation of this
dynamically-sized struct.
|
2016-09-04 12:57:41 +02:00 |
|