Uh oh!
There was an error while loading. Please reload this page.
Remove null check that is used later to handle size request scenario. - #66428
Conversation
ghost
commented
Mar 10, 2022
Tagging subscribers to this area: @tommcdon Issue DetailsFixes #13500 /cc @dotnet/dotnet-diag
|
There was a problem hiding this comment.
This technically changes the behavior of this in a way that it's visible to callers. Although I am not a fan of this, this is not documented and preserving old behavior feels safer (it's been there since framework). I.E: return E_POINTER and delete the other path
AaronRobinsonMSFT
commented
Mar 10, 2022
Is that the bar for these kind of changes? There is definitely risk here. I recently hit this very issue since the common pattern in these API is to pass |
hoyosjs
commented
Mar 10, 2022
My engineering head tells me I like the common pattern. My gut tells me that every time we break the return of a method that's been established for a while, things break. The more common case to get the count of fields on a type is |
noahfalk
commented
Mar 10, 2022
I'd put the bar at "is this likely to break debuggers?" Unlike BCL APIs where there can be millions of usages, most debugger APIs only have a few call sites in the whole world so the odds of a corner case usage is lower. I'd be surprised if any debugger ever intentionally passed NULL to this API because making a call that returns a predictable error isn't very useful. In the unlikely case some debugger's code depended on that behavior it is reasonable for us to ask them to make a tiny change to resolve the issue. To add a little more confidence here, I'd confirm with @gregg-miskelly that VS doesn't rely on GetTypeFields() returning E_POINTER in their code. A github search in https://github.com/Samsung/netcoredbg shows no usage of the API so all good there. Once that is done + all the tests pass I think we've done enough due diligence. |
AaronRobinsonMSFT
commented
Mar 10, 2022
Thanks @hoyosjs and @noahfalk . Appreciate the frank discussion about concerns. Let me touch base with @gregg-miskelly and company offline to get their thoughts. I will circle back when that is done. @hoyosjs Does what @noahfalk offered change your thoughts or do you still have strong concerns here? |
hoyosjs
commented
Mar 10, 2022
In my head, go for it. Undoing the break is easy enough if they can just tell their users to upgrade. |
Fixes#13500
/cc @dotnet/dotnet-diag