Skip to content

Fix alignment of RID and Packed*Array on 32-bit x86 (Linux). - #2072

Merged
dsnopek merged 1 commit into
godotengine:masterfrom
BenLubar:rid-alignof-x86_32
Oct 15, 2026
Merged

dsnopek merged 1 commit into
godotengine:masterfrom
BenLubar:rid-alignof-x86_32

Conversation

@BenLubar

Copy link
Copy Markdown
Contributor

Fixes #1956.

@BenLubar
BenLubar requested a review from a team as a code owner October 14, 2026 15:59

@dsnopek dsnopek left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! Makes sense to me :-)

@BenLubar
BenLubar marked this pull request as draft October 14, 2026 20:24
@BenLubar

Copy link
Copy Markdown
Contributor Author

This doesn't solve Packed*Array being aligned improperly.

@BenLubar
BenLubar marked this pull request as ready for review October 14, 2026 20:42
@BenLubar BenLubar changed the title Fix alignment of RID on 32-bit x86 (Linux). Fix alignment of RID and Packed*Array on 32-bit x86 (Linux). Oct 14, 2026
@BenLubar
BenLubar requested a review from dsnopek October 14, 2026 20:42
@BenLubar

Copy link
Copy Markdown
Contributor Author

I think that's all of them. String and its siblings, Array, and Dictionary all have one-pointer sizes so they won't hit the >= 8 condition on 32-bit, and Callable and Signal are both explicitly 8-byte aligned. All the rest (VectorN, Color, etc.) are manually implemented with their actual contents.

@dsnopek
dsnopek merged commit c834ee1 into godotengine:master Oct 15, 2026
20 checks passed
@BenLubar
BenLubar deleted the rid-alignof-x86_32 branch October 15, 2026 19:23
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.

RID causes native structures to be misaligned

2 participants