Skip to content

Conversation

@bobbens
Copy link

@bobbens bobbens commented Jun 10, 2025

I'm getting a really weird issue with memory corruption somehow related to lyaml and steam runtimes, so I decided to see if fixing the lyaml warnings on compilation (compiled and embedded with meson instead of luarocks) fixes the issue.

@gvvaughan
Copy link
Owner

I'm getting a really weird issue with memory corruption somehow related to lyaml and steam runtimes, so I decided to see if fixing the lyaml warnings on compilation (compiled and embedded with meson instead of luarocks) fixes the issue.

Thanks for the PR. Did these changes improve your memory corruption issues? I see that all the tests fail catastrophically in GitHub, although that could easily be GitHub moving the goal posts and nothing related to the changes in your PR.

Also, what are the (void) L; lines for? I'm actually surprised that is even valid C syntax when L is a struct pointer! :-/

@bobbens
Copy link
Author

bobbens commented Jun 20, 2025

I'm getting a really weird issue with memory corruption somehow related to lyaml and steam runtimes, so I decided to see if fixing the lyaml warnings on compilation (compiled and embedded with meson instead of luarocks) fixes the issue.

Thanks for the PR. Did these changes improve your memory corruption issues? I see that all the tests fail catastrophically in GitHub, although that could easily be GitHub moving the goal posts and nothing related to the changes in your PR.

They didn't. It's a weird issue where compiling locally works fine, but compiling with a fedora docker image using the steam runtime causes some unpredictable crash. So it's somehow related to either environment or compile optimizations.

Sadly, the changes did not fix the core issue, although they solved a lot of warning noise. I eventually side-stepped it all by using lua-ryaml (with my PR applied) which solves the issue.

Also, what are the (void) L; lines for? I'm actually surprised that is even valid C syntax when L is a struct pointer! :-/

That's just a way to shut up unused variable warnings, which you get if you compile the project with something like -W -Wall -Wextra. It doesn't actually generate any code.

EDIT: Looking at the failed actions here, it could very well likely be the same issue I have. I'm not sure if it's from lyaml, or upstream from libyaml though.

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