This repository has been archived by the owner on May 1, 2024. It is now read-only.
[Android] Check for IsDisposed() before accessing renderer View #1032
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of Change
Containers on Android that inflate
renderer
s asView
s currently only check to see if therenderer
isnull
. With the new Fast Renderers, it is possible for theView
s themselves to be collected before therenderer
is set tonull
. This change will ensure that theView
is not disposed, and if it is, go ahead and rebuild theView
from therenderer
to prevent anObjectDisposedException
.Observed on
ScrollView
, so there is a test case to prove the fix. Added the checks on several other suspicious container elements for good measure.Bugs Fixed
Not targeted at a specific ticket, but it is possible that one or more of the recent ObjectDisposed tickets on 2.3.5 are resolved by this.
API Changes
None
Behavioral Changes
None
PR Checklist