From aa519879a76e82d870bb1353eee7dfdf8ea07764 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Sun, 15 Jun 2025 23:05:55 +0200 Subject: [PATCH] Fix #24617: Prevent hired boat with 0 speed causing division by 0 --- distribution/changelog.txt | 1 + src/openrct2/ride/Vehicle.cpp | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/distribution/changelog.txt b/distribution/changelog.txt index 33292ea8b6..3c3b99be94 100644 --- a/distribution/changelog.txt +++ b/distribution/changelog.txt @@ -16,6 +16,7 @@ - Fix: [#24576] It is possible to edit open rides in certain circumstances. - Fix: [#24589] Music tab doesn’t fully render in multiplayer. - Fix: [#24615] Blank strings in Windows installer. +- Fix: [#24617] ‘Divide by zero’ error when updating boat hire acceleration. 0.4.23 (2025-06-07) ------------------------------------------------------------------------ diff --git a/src/openrct2/ride/Vehicle.cpp b/src/openrct2/ride/Vehicle.cpp index 698d9627fa..dc7f255c6e 100644 --- a/src/openrct2/ride/Vehicle.cpp +++ b/src/openrct2/ride/Vehicle.cpp @@ -3920,7 +3920,10 @@ void Vehicle::UpdateMotionBoatHire() } eax -= velocity; edx = powered_acceleration * 2; - ecx += (eax * edx) / ebx; + if (ebx != 0) + { + ecx += (eax * edx) / ebx; + } } acceleration = ecx; }