Fixes an issue of unexpected message payload in a timeout message

Also added some more sanity checks.