Skip to content
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

Fix nullptr dereference when autoreplacing vehicle with no orders in GetIncompatibleRefitOrderIdForAutoreplace #9387

Merged
merged 1 commit into from Jun 19, 2021

Conversation

@JGRennison
Copy link
Contributor

@JGRennison JGRennison commented Jun 19, 2021

Motivation / Problem

A null pointer dereference occurs when GetIncompatibleRefitOrderIdForAutoreplace is called on a vehicle with no orders, such that the order list is null.
(This also includes autoreplacing of free-wagon chains).

This was introduced in PR #8169.

Description

Handle the case where the order list is null in GetIncompatibleRefitOrderIdForAutoreplace.

Limitations

N/A

Checklist for review

Some things are not automated, and forgotten often. This list is a reminder for the reviewers.

  • The bug fix is important enough to be backported? (label: 'backport requested')
  • This PR affects the save game format? (label 'savegame upgrade')
  • This PR affects the GS/AI API? (label 'needs review: Script API')
    • ai_changelog.hpp, gs_changelog.hpp need updating.
    • The compatibility wrappers (compat_*.nut) need updating.
  • This PR affects the NewGRF API? (label 'needs review: NewGRF')
Copy link
Contributor

@glx22 glx22 left a comment

Commit message needs to be fixed, but code looks good.

Loading

… no orders

In GetIncompatibleRefitOrderIdForAutoreplace
glx22
glx22 approved these changes Jun 19, 2021
@TrueBrain TrueBrain merged commit 8a33e98 into OpenTTD:master Jun 19, 2021
15 checks passed
Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants