From d90f6f01cc94d2c41ed2a96e509747be9461ebaa Mon Sep 17 00:00:00 2001 From: frosch Date: Mon, 28 Apr 2025 13:23:19 +0200 Subject: [PATCH] Codechange: CALLBACK_FAILED is an internal constant, do not use it as numeric value in VA2 computations. --- src/newgrf_spritegroup.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/newgrf_spritegroup.cpp b/src/newgrf_spritegroup.cpp index ce75956f2b..5ae850f9fe 100644 --- a/src/newgrf_spritegroup.cpp +++ b/src/newgrf_spritegroup.cpp @@ -198,9 +198,10 @@ const SpriteGroup *DeterministicSpriteGroup::Resolve(ResolverObject &object) con if (adjust.variable == 0x7E) { const SpriteGroup *subgroup = SpriteGroup::Resolve(adjust.subroutine, object, false); if (subgroup == nullptr) { - value = CALLBACK_FAILED; + value = UINT16_MAX; } else { value = subgroup->GetCallbackResult(); + if (value == CALLBACK_FAILED) value = UINT16_MAX; } /* Note: 'last_value' and 'reseed' are shared between the main chain and the procedure */