Skip to content

changes for shared flight#2

Draft
justinsnapp wants to merge 38 commits into
panelmanagerfrom
master
Draft

changes for shared flight#2
justinsnapp wants to merge 38 commits into
panelmanagerfrom
master

Conversation

@justinsnapp

Copy link
Copy Markdown

No description provided.

justinsnapp and others added 30 commits June 21, 2023 12:27
…_aligned_free() for _aligned_alloc() pointers
justinsnapp and others added 8 commits August 3, 2024 23:00
obj8_parse spawns an internal worker thread (obj8_parse_worker) that
parses .obj files. The manip parsing functions were calling
XPLMFindCommand and find_dr_with_offset (which calls XPLMFindDataRef)
from this worker thread, violating X-Plane 12's thread safety.

Now the worker thread stores command/dataref names in the manip struct
(cmdname, cmdname2, drname fields) and sets needs_resolve=true. A new
function obj8_resolve_commands() performs the actual XPLMFindCommand
and dr_find calls, and must be called from the main thread after
obj8_is_load_complete() returns true.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The remote branch renamed this to obj8_needs_upload with different
semantics. SFManipDrawing uses obj8_is_load_complete to check if
parsing is done before resolving commands.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This function was present in the SharedFlight fork but was lost
during the upstream merge cleanup.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The restored function was passing NULL for dr_values to
obj8_draw_group_cmd, but the new version requires a valid dr_values
array built from obj8_drset_get_all. This caused a NULL pointer
dereference in cmd_dr_read when drawing manipulator highlights.

Copied the dr_values setup from obj8_draw_group, including the
stack allocation optimization and VAO binding.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants