Skip to content

Commit c403d80

Browse files
committed
Fix crash when currently focused element gets marked as enableFocusRing=false (microsoft#14306)
* Fix crash when currently focused element gets marked as enableFocusRing=false * Change files
1 parent 9cc9257 commit c403d80

File tree

2 files changed

+15
-5
lines changed

2 files changed

+15
-5
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"type": "prerelease",
3+
"comment": "Fix crash when currently focused element gets marked as enableFocusRing=false",
4+
"packageName": "react-native-windows",
5+
"email": "30809111+acoates-ms@users.noreply.github.com",
6+
"dependentChangeType": "patch"
7+
}

vnext/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -168,11 +168,14 @@ void ComponentView::updateProps(
168168
m_componentHostingFocusVisual->hostFocusVisual(false, get_strong());
169169
}
170170

171-
if (m_componentHostingFocusVisual->m_focusPrimitive->m_focusInnerPrimitive) {
172-
m_componentHostingFocusVisual->m_focusPrimitive->m_focusInnerPrimitive->updateProps(oldViewProps, newViewProps);
173-
}
174-
if (m_componentHostingFocusVisual->m_focusPrimitive->m_focusOuterPrimitive) {
175-
m_componentHostingFocusVisual->m_focusPrimitive->m_focusOuterPrimitive->updateProps(oldViewProps, newViewProps);
171+
// We have to check m_componentHostingFocusVisual again, as it can be set to null by above hostFocusVisual call
172+
if (m_componentHostingFocusVisual) {
173+
if (m_componentHostingFocusVisual->m_focusPrimitive->m_focusInnerPrimitive) {
174+
m_componentHostingFocusVisual->m_focusPrimitive->m_focusInnerPrimitive->updateProps(oldViewProps, newViewProps);
175+
}
176+
if (m_componentHostingFocusVisual->m_focusPrimitive->m_focusOuterPrimitive) {
177+
m_componentHostingFocusVisual->m_focusPrimitive->m_focusOuterPrimitive->updateProps(oldViewProps, newViewProps);
178+
}
176179
}
177180
}
178181
if ((m_flags & ComponentViewFeatures::ShadowProps) == ComponentViewFeatures::ShadowProps) {

0 commit comments

Comments
 (0)