If message is broken your application crashes with no message.
It's better to wrap this code in try-catch block and write message into log or on screen.
The same suggestion is for the market_data_receiver::trade_handler.