Fix: TextfileWindow called virtual methods before constructor completed. (#11889)

SetStringParameters() was called during widget tree init in the constructor.

Calls within a constructor cannot call the derived classes methods. This would result in invalid data being passed to the string system, which could then crash.

(cherry picked from commit fef0bfcfd3)
This commit is contained in:
Peter Nelson
2024-01-27 14:45:37 +00:00
committed by Jonathan G Rennison
parent a7c2f489f6
commit 4bf9c123d3
8 changed files with 22 additions and 4 deletions

View File

@@ -649,6 +649,7 @@ struct ScriptTextfileWindow : public TextfileWindow {
ScriptTextfileWindow(TextfileType file_type, CompanyID slot) : TextfileWindow(file_type), slot(slot)
{
this->ConstructWindow();
this->OnInvalidateData();
}