Skip to content

Commit 643e059

Browse files
committed
decoding of roc errors
1 parent 334bece commit 643e059

File tree

1 file changed

+13
-5
lines changed

1 file changed

+13
-5
lines changed

src/AlfServer.cxx

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -147,11 +147,19 @@ std::string AlfServer::icGbtI2cWrite(const std::string& parameter, AlfLink link)
147147
std::string AlfServer::patternPlayer(const std::string& parameter, std::shared_ptr<roc::BarInterface> bar2)
148148
{
149149
std::vector<std::string> parameters = Util::split(parameter, argumentSeparator());
150-
151-
roc::PatternPlayer::Info info = parseStringToPatternPlayerInfo(parameters);
152-
153-
roc::PatternPlayer pp = roc::PatternPlayer(bar2);
154-
pp.play(info);
150+
try {
151+
roc::PatternPlayer::Info info = parseStringToPatternPlayerInfo(parameters);
152+
roc::PatternPlayer pp = roc::PatternPlayer(bar2);
153+
pp.play(info);
154+
}
155+
catch(boost::exception const& e) {
156+
auto info = boost::get_error_info<ErrorInfo::Message>(e);
157+
if (info) {
158+
BOOST_THROW_EXCEPTION(AlfException() << ErrorInfo::Message(info->data()));
159+
} else {
160+
throw;
161+
}
162+
}
155163
return "";
156164
}
157165

0 commit comments

Comments
 (0)