-
Notifications
You must be signed in to change notification settings - Fork 463
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bug: undefined behavior when transmuting u32 to various enums #1388
Comments
@antonilol this is fixed in my merge request: #1444 cc @Cobrand |
Not completely, a quick search found (every line containing
There could be more, so please make sure you got them all before closing this issue. |
@antonilol Thanks, I've updated my comment in the MR to reflect this. I've decided not to amend the MR further:
|
Yes, even if people switch to SDL3 (I don't know how stable the Rust bindings for SDL3 are already), people still use SDL2 so at least undefined behavior should be fixed here. |
It depends what you call maintained. I still look at PRs and merge them from time to time, although probably not as often as some of you would expect. If it was as easy as click "merge", I would do it more often, but unfortunately you have to read them, ask for changes, wait for them to answer, and if they don't take their changes to adapt them and merge them, sometimes fix merge conflicts, and that for every single PR. Yes I do need maintainers or help in general, I have been calling it for years. Originally I just offered to take a bit of the burden, next thing I know I'm the only maintainer left and no one is stepping up. It has been this way for 8 years, almost 9 now. I think you can understand that it's not always easy to look at everything that's being thrown at you every week for that long while still keeping decent delays. Sorry to be a bit pissy but it's a bit like the "no take, only throw" image, people expect it to be maintained, but no one is stepping up to help either. Yes I will look at the issues/PRs at some point, no I don't have an estimate of when I will, yes help would be really appreciated. Thanks. |
Yessir, I totally get it. Open source is thankless and this is a big repo, especially for one person. How can I help out? Can I be a maintainer? |
Currently I'm trying to contact AngryLawyer (the original repo owner), so that I can add other members to the organization myself, once I can do that I'll definitely add new maintainers yes. |
in several places in the code a
u32
is transmuted to enums without any checks. examples includerust-sdl2/src/sdl2/render.rs
Line 118 in 146cff6
rust-sdl2/src/sdl2/render.rs
Line 172 in 146cff6
rust-sdl2/src/sdl2/pixels.rs
Line 448 in 146cff6
these
TryInto
implementations are public so this can be easily demonstrated by using miri with the codelet b: BlendMode = 3.try_into()
(this calls<BlendMode as TryFrom<u32>>::try_from(3)
with the invalid value 3) for example:The text was updated successfully, but these errors were encountered: