The original impl did not take into account exceptions marshalling across thread boundaries so it could end up with the error being accessed after being disposed
Fix this by querying the message in-place, and also clear the error after, to signal to glib that we've suceeded in recovering
The original impl did not take into account exceptions marshalling across thread boundaries so it could end up with the error being accessed after being disposed Fix this by querying the message in-place, and also clear the error after, to signal to glib that we've suceeded in recovering
Fixes https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1247180