Description
Description
On Fabirc Arch, my iOS application Crashed when popViewController
Only the TextInput in focus status, this Crash happened
Steps to reproduce
JS Like this
import React, { Component } from 'react';
import {
View,
ScrollView,
SafeAreaView,
KeyboardAvoidingView,
TextInput,
TouchableOpacity,
Text,
StyleSheet
} from 'react-native';
import { AHRNBackExitModule } from 'autohome-lib';
const BiStyle = StyleSheet.create({
biAcontent: {
height: "100%",
backgroundColor: "#f8f9fc",
},
});
export default class BiddingOrder extends Component {
constructor(props) {
super(props);
this.state = {
userPhone: '',
};
this.textInputRef = React.createRef();
}
closePage = () => {
//popViewController
AHRNBackExitModule.invokeExitV2()
}
render() {
return (
<View style={{ padding: 100 }}>
<TouchableOpacity
onPress={() => this.closePage()}
activeOpacity={1}
>
back
<ScrollView
showsVerticalScrollIndicator={false}
keyboardShouldPersistTaps="handled"
>
<View>
<TextInput
ref={this.textInputRef}
placeholder="Input Phone Number"
placeholderTextColor={'#C5CAD4'}
value={this.state.userPhone}
autoFocus={true}
onChangeText={(text) => this.setState({ userPhone: text })}
onBlur={() => {AHRNBackExitModule.invokeExit();} }
/>
</View>
</ScrollView>
</SafeAreaView>
</KeyboardAvoidingView>
);
}
}
When I press back to popViewController,app crashed
React Native Version
0.79.0
Affected Platforms
Runtime - iOS
Areas
Fabric - The New Renderer
Output of npx @react-native-community/cli info
StubView: ASSERT FAILURE: REMOVE mutation assertion failure: oldChildShadowView does not match oldStubView
Stacktrace or Logs
#4 0x000000010e5d4084 in facebook::react::StubViewTree::mutate at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/ReactCommon/react/renderer/mounting/StubViewTree.cpp:173
#5 0x000000010e527b00 in facebook::react::MountingCoordinator::pullTransaction at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp:133
#6 0x000000010e5eab3c in facebook::react::TelemetryController::pullTransaction at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/ReactCommon/react/renderer/mounting/TelemetryController.cpp:22
#7 0x000000010e86d41c in -[RCTMountingManager performTransaction:] at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/React/Fabric/Mounting/RCTMountingManager.mm:271
#8 0x000000010e86d1cc in -[RCTMountingManager initiateTransaction:] at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/React/Fabric/Mounting/RCTMountingManager.mm:259
#9 0x000000010e86c9c0 in -[RCTMountingManager scheduleTransaction:] at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/React/Fabric/Mounting/RCTMountingManager.mm:206
#10 0x000000010e8d32c8 in -[RCTSurfacePresenter schedulerDidFinishTransaction:] at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/React/Fabric/RCTSurfacePresenter.mm:374
#11 0x000000010e8afdd8 in SchedulerDelegateProxy::schedulerDidFinishTransaction at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/React/Fabric/RCTScheduler.mm:30
#12 0x000000010e5776f0 in facebook::react::Scheduler::uiManagerDidFinishTransaction at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/ReactCommon/react/renderer/scheduler/Scheduler.cpp:331
#13 0x000000010e621f84 in facebook::react::UIManager::shadowTreeDidFinishTransaction at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/ReactCommon/react/renderer/uimanager/UIManager.cpp:541
#14 0x000000010e5b1458 in facebook::react::ShadowTree::mount at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/ReactCommon/react/renderer/mounting/ShadowTree.cpp:424
#15 0x000000010e5b1c08 in facebook::react::ShadowTree::tryCommit at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/ReactCommon/react/renderer/mounting/ShadowTree.cpp:410
#16 0x000000010e5b15ac in facebook::react::ShadowTree::commit at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/ReactCommon/react/renderer/mounting/ShadowTree.cpp:307
#17 0x000000010e5b2958 in facebook::react::ShadowTree::commitEmptyTree at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/ReactCommon/react/renderer/mounting/ShadowTree.cpp:429
#18 0x000000010e5db8fc in facebook::react::SurfaceHandler::stop at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp:111
#19 0x000000010e83b8a4 in -[RCTFabricSurface stop] at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/React/Fabric/Surface/RCTFabricSurface.mm:121
#20 0x000000010e8d3110 in __53-[RCTSurfacePresenter _stopAllSurfacesWithScheduler:]_block_invoke at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/React/Fabric/RCTSurfacePresenter.mm:359
#21 0x000000010e8e72b8 in -[RCTSurfaceRegistry enumerateWithBlock:] at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/React/Fabric/RCTSurfaceRegistry.mm:35
#22 0x000000010e8d2f98 in -[RCTSurfacePresenter _stopAllSurfacesWithScheduler:] at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/React/Fabric/RCTSurfacePresenter.mm:357
#23 0x000000010e8d1914 in -[RCTSurfacePresenter suspend] at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/React/Fabric/RCTSurfacePresenter.mm:237
#24 0x000000010e8e5034 in -[RCTSurfacePresenterBridgeAdapter dealloc] at /Users/atlantica/Desktop/autohome/RN/react-native/node_modules/react-native/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm:72
#25 0x00000001062c1dd4 in -[AHRNFabricInstance .cxx_destruct] at /Users/atlantica/Desktop/autohome/RN/AHRNBrowser/AHRNBrowserFramework/AHRNRootView/AHRNFabricInstance.mm:66
MANDATORY Reproducer
https://github.com/nanatlantica/RNDynamic.git
Screenshots and Videos
No response