react-native-macos/ReactAndroid
Joshua Gross 71bb19827b NativeAnimatedModule: fix crash that can occur when animated node setup races with NativeAnimatedModule setup
Summary:
When switching between non-Fabric and Fabric screens, I believe that `initializeEventListenerForUIManagerType` is not always being called on the NativeAnimatedNodesManager if
`NativeAnimatedModule.initializeLifecycleEventListenersForViewTag` is being called before the NativeAnimatedNodesManager ivar has been set. This should occur very infrequently, but logs
indicate that it /does/ happen in some marginal cases. Protecting against these cases should be trivial, by using the `getNodesManager` method which is responsible for returning a nodes manager or creating a new one.

The existing uses of the `NativeAnimatedNodesManager` ivar also occur on different threads and we were not protecting against this, so I'm changing it to an atomic. It's very likely that
the inconsistency issues in the past were caused not by ordering errors, but thread races.

Changelog: [Internal]

Reviewed By: fkgozali

Differential Revision: D24267118

fbshipit-source-id: 68abbff7ef3d0b2ecc9aa9977165663ad9447ab8
2020-10-12 22:53:40 -07:00
..
libs Upgrade Android support library to version 28 in RN 2019-01-22 10:44:53 -08:00
src NativeAnimatedModule: fix crash that can occur when animated node setup races with NativeAnimatedModule setup 2020-10-12 22:53:40 -07:00
.npmignore
Android-prebuilt.mk TurboModule Android: properly set up RNTester ndkBuild and cleanup dependencies 2020-09-29 18:41:14 -07:00
DevExperience.md Updating the URLs to point at new domain name reactnative.dev 2020-02-24 13:09:11 -08:00
README.md Updating the URLs to point at new domain name reactnative.dev 2020-02-24 13:09:11 -08:00
build.gradle Codegen Android: Compile ReactAndroid codegen C++ output 2020-09-21 11:09:12 -07:00
gradle.properties Fix React Native Robolectric 4.4 deps (#30073) 2020-09-29 22:51:46 -07:00
proguard-rules.pro Add ProGuard rule for hermes (#28571) 2020-04-09 13:48:55 -07:00
release.gradle Tidy up license headers [1/n] 2019-10-16 10:06:33 -07:00

README.md

Building React Native for Android

See the docs on the website.

Running tests

When you submit a pull request CircleCI will automatically run all tests. To run tests locally, see Testing.