mono / monodevelop

MonoDevelop is a cross platform .NET IDE
http://www.monodevelop.com
2.84k stars 1.01k forks source link

IDE hang when moving lines with Option+Up/Down #7152

Open DavidKarlas opened 5 years ago

DavidKarlas commented 5 years ago

Problem is that if https://github.com/mono/monodevelop/blob/master/main/src/addins/CSharpBinding/MonoDevelop.CSharp.Formatting/CSharpFormatter.cs#L99 goes to background thread and eventually needs to come back to UI thread it can't because https://github.com/mono/monodevelop/blob/master/main/src/addins/CSharpBinding/MonoDevelop.CSharp.Formatting/CSharpFormatter.cs#L73 is holding it. I can repro this consistently by trying to move some field/local declaration in and out of method by using Option+Up/Down.

Therzok commented 5 years ago

Maybe we should remove the sync API.