bugfix in the asynchronous message reader

was failing in certain specific cases if the message wasn't available entirely in the input buffer