From d9b2b7d484b5dda3dad91aef20da425897698b84 Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Wed, 21 Dec 2016 01:15:30 +0200 Subject: SCI32: Fix a subtle bug in SciArray::trim() With this bug, whenever a string was trimmed from the right, the last character was always cut off, even if it wasn't whitespace. This was apparent in the RAMA demo, which parses a text file for its scenes, and each line is trimmed --- engines/sci/engine/segment.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'engines/sci/engine') diff --git a/engines/sci/engine/segment.h b/engines/sci/engine/segment.h index 538f31170d..81be9332c2 100644 --- a/engines/sci/engine/segment.h +++ b/engines/sci/engine/segment.h @@ -810,9 +810,9 @@ public: if (flags & kArrayTrimRight) { source = data + strlen((char *)data) - 1; while (source > data && *source != showChar && *source <= kWhitespaceBoundary) { + *source = '\0'; --source; } - *source = '\0'; } if (flags & kArrayTrimCenter) { -- cgit v1.2.3