Use assert to protect against dereferencing null pointers#287
Merged
ChrisThrasher merged 1 commit intomasterfrom Sep 2, 2024
Merged
Use assert to protect against dereferencing null pointers#287ChrisThrasher merged 1 commit intomasterfrom
assert to protect against dereferencing null pointers#287ChrisThrasher merged 1 commit intomasterfrom
Conversation
347892f to
9edab04
Compare
9edab04 to
009bd8a
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #239
This pull request changes CSFML to use SFML's policy for assertions. In short, if a user-provided argument is able to invoke UB, we
assertagainst that potential value. In switching to CSFML to this pattern, we get a few benefits.assertplus a normal line of code.This. Now that the macros are gone we can rename those members or pick different implementation techniques like what I proposed in Use inheritance to implement wrapper struct types #222 for example.sf::error any other logging utilities. I prefer libraries not do logging without a way to intercept and redirect those logs which CSFML currently does not have.CSFML as it stands prior to this PR defines the behavior of null pointer arguments in Debug builds while leaving that behavior undefined for Release builds so that aspect of CSFML has not changed. All this PR does is change what that Debug behavior is.