HumanSkeleton race condition #268

Open
opened 2026-04-05 18:13:50 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @ButterscotchV on 9/4/2025

There seems to be a race condition with HumanSkeleton. I experienced a NullPointerException after a null check in Constraint, this is likely due to the skeleton being disassembled in HumanSkeleton.assembleSkeletonArms() from HumanSkeleton.updateToggleState() with SkeletonConfigToggles.FORCE_ARMS_FROM_HMD, called by RPCSettingsHandler.onChangeSettingsRequest() on the RPC thread.

Image
*Originally created by @ButterscotchV on 9/4/2025* There seems to be a race condition with HumanSkeleton. I experienced a NullPointerException after a null check in `Constraint`, this is likely due to the skeleton being disassembled in `HumanSkeleton.assembleSkeletonArms()` from `HumanSkeleton.updateToggleState()` with `SkeletonConfigToggles.FORCE_ARMS_FROM_HMD`, called by `RPCSettingsHandler.onChangeSettingsRequest()` on the RPC thread. <img width="987" height="291" alt="Image" src="https://github.com/user-attachments/assets/3c539b19-5479-4c48-928c-ed81fc1c517b" />
MrUnknownDE added the Priority: HighArea: ServerType: BugPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: Bug labels 2026-04-05 18:14:01 +02:00
Sign in to join this conversation.
No Label Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/SlimeVR-Server#268