From ac378fbe2a788abacda691c4b62dcab0cca96d60 Mon Sep 17 00:00:00 2001 From: Tim Jenssen Date: Fri, 8 Jan 2021 11:28:05 +0100 Subject: [PATCH] Revert "Reduce allocations patches" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 4580a3b22276817a855a3111a89cb93b32f743c1. This reverts commit e852173484e1cbffa86319b3b9cadfd4f948ae44. We still have to support old gcc. (🍒 picked from commit e9c6944479fad2288060c72bb4df8dcbab9e0b2c) Change-Id: Ia8b198390a0f82c2104991900a3091c96d6e7f24 Reviewed-by: Tim Jenssen --- src/libs/languageutils/componentversion.cpp | 14 ++++++------- .../designercore/metainfo/nodemetainfo.cpp | 20 ++----------------- 2 files changed, 8 insertions(+), 26 deletions(-) diff --git a/src/libs/languageutils/componentversion.cpp b/src/libs/languageutils/componentversion.cpp index 06cf1f486df..3d1a0e6e79e 100644 --- a/src/libs/languageutils/componentversion.cpp +++ b/src/libs/languageutils/componentversion.cpp @@ -29,8 +29,6 @@ #include #include -#include - using namespace LanguageUtils; @@ -75,12 +73,12 @@ bool ComponentVersion::isValid() const QString ComponentVersion::toString() const { - char text[std::numeric_limits::digits10 * 2 + 1]; - auto [majorEnd, majorError] = std::to_chars(std::begin(text), std::end(text), _major); - *majorEnd = '.'; - ++majorEnd; - auto [minorEnd, minorError] = std::to_chars(majorEnd, std::end(text), _minor); - return QLatin1String(std::data(text), static_cast(minorEnd - std::begin(text))); + QByteArray temp; + QByteArray result; + result += temp.setNum(_major); + result += '.'; + result += temp.setNum(_minor); + return QString::fromLatin1(result); } void ComponentVersion::addToHash(QCryptographicHash &hash) const diff --git a/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp b/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp index 948c91e7743..9aec482f06b 100644 --- a/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp +++ b/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp @@ -44,9 +44,6 @@ #include #include -#include -#include - namespace QmlDesigner { namespace Internal { @@ -714,22 +711,9 @@ PropertyName NodeMetaInfoPrivate::defaultPropertyName() const return PropertyName("data"); } -static void addNumber(TypeName &id, int number) +static inline TypeName stringIdentifier( const TypeName &type, int maj, int min) { - char text[std::numeric_limits::digits10 + 1]; - auto [end, error] = std::to_chars(std::begin(text), std::end(text), number); - id.append(std::data(text), static_cast(end - std::begin(text))); -} - -static TypeName stringIdentifier(const TypeName &type, int majorVersion, int minorVersion) -{ - TypeName id = type; - id.reserve(id.size() + 5); - addNumber(id, majorVersion); - id.append('_'); - addNumber(id, minorVersion); - - return id; + return type + QByteArray::number(maj) + '_' + QByteArray::number(min); } NodeMetaInfoPrivate::Pointer NodeMetaInfoPrivate::create(Model *model, const TypeName &type, int major, int minor)