void AvatarDownloaded(AvatarDownloadDetails details) { try { if (avatarBox.InvokeRequired) { avatarBox.Invoke(new MethodInvoker(() => { AvatarDownloaded(details); } )); } else { avatarBox.Image = ComposeAvatar((details.Success ? details.Filename : null)); } } catch (Exception ex) { Console.WriteLine("FriendControl", "Unable to compose avatar: {0}", ex.Message); } }