diff options
author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2017-12-25 05:08:14 +0100 |
---|---|---|
committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2017-12-25 05:08:14 +0100 |
commit | 2a199ca830cb1338b5c52ca5f147ebef26330d22 (patch) | |
tree | 27cb32b7371a97160dcd1dc1f794312074c18b81 /src/DabMod.cpp | |
parent | 626cfba78e2885200450ff8b4f4cf09ff6d0b830 (diff) | |
download | dabmod-2a199ca830cb1338b5c52ca5f147ebef26330d22.tar.gz dabmod-2a199ca830cb1338b5c52ca5f147ebef26330d22.tar.bz2 dabmod-2a199ca830cb1338b5c52ca5f147ebef26330d22.zip |
Do not use out_of_range for multiplex reconfiguration error
Diffstat (limited to 'src/DabMod.cpp')
-rw-r--r-- | src/DabMod.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/DabMod.cpp b/src/DabMod.cpp index dfefb53..b6f2dee 100644 --- a/src/DabMod.cpp +++ b/src/DabMod.cpp @@ -36,6 +36,7 @@ #include "InputMemory.h" #include "OutputFile.h" #include "FormatConverter.h" +#include "FrameMultiplexer.h" #if defined(HAVE_OUTPUT_UHD) # include "OutputUHD.h" #endif @@ -534,17 +535,19 @@ run_modulator_state_t run_modulator(modulator_data& m) running = 0; ret = run_modulator_state_t::normal_end; } - } catch (zmq_input_overflow& e) { + } + catch (const zmq_input_overflow& e) { // The ZeroMQ input has overflowed its buffer etiLog.level(warn) << e.what(); ret = run_modulator_state_t::again; - } catch (std::out_of_range& e) { - // One of the DSP blocks has detected an invalid change - // or value in some settings. This can be due to a multiplex - // reconfiguration. + } + catch (const FrameMultiplexerError& e) { + // The FrameMultiplexer saw an error or a change in the size of a + // subchannel. This can be due to a multiplex reconfiguration. etiLog.level(warn) << e.what(); ret = run_modulator_state_t::reconfigure; - } catch (std::exception& e) { + } + catch (const std::exception& e) { etiLog.level(error) << "Exception caught: " << e.what(); ret = run_modulator_state_t::failure; } |