(\r
[&]\r
{\r
- if(video_decoder_ && video_frames_.size() < 3)\r
- boost::range::push_back(video_frames_, video_decoder_->receive()); \r
+ try\r
+ {\r
+ if(video_decoder_ && video_frames_.size() < 3)\r
+ boost::range::push_back(video_frames_, video_decoder_->receive()); \r
+ }\r
+ catch(...)\r
+ {\r
+ CASPAR_LOG_CURRENT_EXCEPTION();\r
+ video_decoder_.reset();\r
+ }\r
}, \r
[&]\r
{\r
- if(audio_decoder_ && audio_chunks_.size() < 3)\r
- boost::range::push_back(audio_chunks_, audio_decoder_->receive()); \r
+ try\r
+ {\r
+ if(audio_decoder_ && audio_chunks_.size() < 3)\r
+ boost::range::push_back(audio_chunks_, audio_decoder_->receive()); \r
+ }\r
+ catch(...)\r
+ {\r
+ CASPAR_LOG_CURRENT_EXCEPTION();\r
+ audio_decoder_.reset();\r
+ }\r
}\r
);\r
\r