Skip to content

GH-954 Enforce godot-cpp Variant to use 8-byte alignment - #1768

Merged
Naros merged 1 commit into
CraterCrash:mainfrom
Naros:GH-954
Aug 1, 2026
Merged

GH-954 Enforce godot-cpp Variant to use 8-byte alignment#1768
Naros merged 1 commit into
CraterCrash:mainfrom
Naros:GH-954

Conversation

@Naros

@Naros Naros commented Jul 31, 2026

Copy link
Copy Markdown
Member

Fixes GH-954

Upstream godot-cpp fix in the queue

Description

In https://github.com/godotengine/godot-cpp/pulls/1958, godot-cpp enforces 8-byte alignment for opaque pointers within the various auto-generated header files from the extension API; however, the Variant class is defined separately in the repository and omits the alignment.

This PR introduces a shim over Variant.hpp supplied by godot-cpp and guarantees that its internal opaque data pointer resides at an 8-byte offset, which allows the extension to run safely on 32/64-bit platforms with strict alignment rules.

@Naros Naros added this to the 2.6 milestone Jul 31, 2026
@Naros Naros added cherrypick:2.4 Requires cherry-pick to Orchestrator 2.4 cherrypick:2.5 Requires cherry-pick to Orchestrator 2.5 requires/testing Cannot be merged, needs testing. labels Jul 31, 2026
@Naros
Naros merged commit d5f3b79 into CraterCrash:main Aug 1, 2026
38 of 39 checks passed
@Naros Naros removed the requires/testing Cannot be merged, needs testing. label Aug 1, 2026
@Naros Naros linked an issue Aug 1, 2026 that may be closed by this pull request
@Naros Naros removed cherrypick:2.4 Requires cherry-pick to Orchestrator 2.4 cherrypick:2.5 Requires cherry-pick to Orchestrator 2.5 labels Aug 1, 2026
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.

Godot crashing on Android device Android app crashes for devices needing armeabi-v7a enabled in export settings

1 participant