Did you try...
if (!sender || !sender->Server())
Ohh you did.. we think alike.
... lol whatever
First few times I had the crash I was doing somethings outside of the internet world so I had considered it a fluke and started the process back up.
Then I started looking into it and saw the crash and didn't really have time to dig into it, eventually it got annoying enough to where I actually dug in and saw what was going on with the code.
Either way it looks to be good to go.