Very strange deadlock on Exception.ToString - C#