Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix data race in
TypeObjectFactory::get_instance
(#5238)
* Refs #21664. Regression test. Signed-off-by: Miguel Company <miguelcompany@eprosima.com> * Refs #21664. Improve synchronization in regression test. Signed-off-by: Miguel Company <miguelcompany@eprosima.com> * Refs #21664. Return created instance to visualize data-race and make test fail. Signed-off-by: Miguel Company <miguelcompany@eprosima.com> * Refs #21664. Just count the number of different instances. This way we have a single final expectation. Signed-off-by: Miguel Company <miguelcompany@eprosima.com> * Refs #21664. Avoid using g_instance inside the instance. Signed-off-by: Miguel Company <miguelcompany@eprosima.com> * Refs #21664. Inject factory in all methods called inside `register_builtin_annotations_types`. Signed-off-by: Miguel Company <miguelcompany@eprosima.com> * Refs #21664. Use atomic enumeration to control the instance state. Signed-off-by: Miguel Company <miguelcompany@eprosima.com> * Refs #21664. Uncrustify. Signed-off-by: Miguel Company <miguelcompany@eprosima.com> * Refs #21672. Notify condition from main thread. Signed-off-by: Miguel Company <miguelcompany@eprosima.com> * Refs #21672. FIx EOL at end of file. Signed-off-by: Miguel Company <miguelcompany@eprosima.com> * Refs #21672. Refactor to create builtin objects inside factory constructor. Signed-off-by: Miguel Company <miguelcompany@eprosima.com> * Refs #21672. Uncrustify. Signed-off-by: Miguel Company <miguelcompany@eprosima.com> --------- Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
- Loading branch information