From 8cba51978e30a7aa9663e724313a8a0a12b27784 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sat, 16 Nov 2019 17:08:15 +0100 Subject: [PATCH] Add a check for using wxString::Format() with a very long string This used to fail until it was fixed in the previous commit. See #18586. --- tests/strings/vararg.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tests/strings/vararg.cpp b/tests/strings/vararg.cpp index cdc2af4530..237a0b6823 100644 --- a/tests/strings/vararg.cpp +++ b/tests/strings/vararg.cpp @@ -264,3 +264,16 @@ TEST_CASE("ArgsValidation", "[wxString][vararg][error]") wxString::Format("%zu", len); #endif } + +TEST_CASE("VeryLongArg", "[wxString][Format][vararg]") +{ + const size_t LENGTH = 70000; + wxString veryLongString('.', LENGTH); + REQUIRE( veryLongString.length() == LENGTH ); + + const wxString s = wxString::Format("%s", veryLongString); + + // Check the length first to avoid very long output if this fails. + REQUIRE( s.length() == LENGTH ); + CHECK( s == veryLongString ); +}