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.
Found by: Mystery-X
Patch by: Geo
It was discovered after the latest rewrite lookup up user records based on account that there are situations where m might not be known, and m being NULL can cause a crash if not properly checked. This creates a wrapper function to a) check which lookup to use based on the provided input, b) fallback to a different lookup in case something returns NULL.
Wrapper function to find an Eggdrop user record based on either a provided
channel memberlist record, host, or account. This function will first check
a provided memberlist and return the result. If no user record is found (or
the memberlist itself was NULL), this function will try again based on a
provided account, and then again on a provided host.
When calling this function it is best to provide all available independent
variables- ie, if you provide 'm' for the memberlist, don't provide
'm->account' for the account, use the independent source variable 'account'
if available. This allows redundant checking in case of unexpected NULLs