config/Block: add method GetPositiveValue()

Adds missing checks to several plugins.
This commit is contained in:
Max Kellermann
2018-01-02 17:22:25 +01:00
parent 7c5306a841
commit be65c7d5d0
10 changed files with 38 additions and 10 deletions

View File

@@ -331,9 +331,9 @@ AlsaOutput::AlsaOutput(EventLoop &_loop, const ConfigBlock &block)
/* legacy name from MPD 0.18 and older: */
block.GetBlockValue("dsd_usb", false)),
#endif
buffer_time(block.GetBlockValue("buffer_time",
MPD_ALSA_BUFFER_TIME_US)),
period_time(block.GetBlockValue("period_time", 0u))
buffer_time(block.GetPositiveValue("buffer_time",
MPD_ALSA_BUFFER_TIME_US)),
period_time(block.GetPositiveValue("period_time", 0u))
{
#ifdef SND_PCM_NO_AUTO_RESAMPLE
if (!block.GetBlockValue("auto_resample", true))

View File

@@ -101,7 +101,7 @@ MakeAoError()
AoOutput::AoOutput(const ConfigBlock &block)
:AudioOutput(0),
write_size(block.GetBlockValue("write_size", 1024u))
write_size(block.GetPositiveValue("write_size", 1024u))
{
const char *value = block.GetBlockValue("driver", "default");
if (0 == strcmp(value, "default"))

View File

@@ -64,7 +64,7 @@ public:
HaikuOutput(const ConfigBlock &block)
:AudioOutput(0),
/* XXX: by default we should let the MediaKit propose the buffer size */
write_size(block.GetBlockValue("write_size", 4096u)) {}
write_size(block.GetPositiveValue("write_size", 4096u)) {}
~HaikuOutput();

View File

@@ -210,7 +210,7 @@ JackOutput::JackOutput(const ConfigBlock &block)
num_source_ports, num_destination_ports,
block.line);
ringbuffer_size = block.GetBlockValue("ringbuffer_size", 32768u);
ringbuffer_size = block.GetPositiveValue("ringbuffer_size", 32768u);
}
inline jack_nframes_t