Go to file
Lars Knoll 9980ba5ba5 Don't change the implementation of a method depending on QT_USE_QSTRINGUILDER
This is rather evil and caused crashes in static builds, when library
and application where compiler with different settings of the
QT_USE_QSTRINGBUILDER flag.

The reason is that the implementation of QStringDecoder::operator() was
different (and returning different data) with or without the setting.
The compiler would thus create two very different versions of this method
in different .o files. When linking the app, one of the implementations
would be chosen, leading to crashes in places where the other one was
expected.

Fix this by only providing the QStringBuilder enabled version of the
methods. They return a temporary object that's converatable to a
QString/QByteArray anyway. Make sure that qdoc shows a simple signature.

As a drive by fix a compile error in a code path that didn't get hit
so far.

Change-Id: I312fa564d0bc6b464f2b4466de1d53841f7b7b0f
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-05-26 13:11:41 +00:00
bin CMake: Use custom install script to support Ninja Multi-Config builds 2020-05-19 10:16:11 +02:00
cmake CMake: Write QT.XXX.depends entries into module pri files 2020-05-25 21:18:30 +02:00
coin CMake: Use the same generator when building other repositories 2020-05-19 10:16:16 +02:00
config.tests CMake: Skip regeneration of manual compile test project 2020-04-09 11:26:46 +02:00
dist Remove last remainings of Qt Quick 1 imports 2020-05-25 11:48:12 +02:00
doc Remove last remainings of Qt Quick 1 imports 2020-05-25 11:48:12 +02:00
examples Fix hellowindow example 2020-05-25 17:37:57 +02:00
lib Purge all fonts 2015-08-18 19:59:14 +00:00
mkspecs Remove ANGLE 2020-05-26 15:11:40 +02:00
qmake Remove last remainings of Qt Quick 1 imports 2020-05-25 11:48:12 +02:00
src Don't change the implementation of a method depending on QT_USE_QSTRINGUILDER 2020-05-26 13:11:41 +00:00
tests Add a property to QSFPM to show children of accepted items 2020-05-26 15:11:40 +02:00
util Move QtVulkanSupport into QtGui and QtOpenGL 2020-05-22 15:38:28 +02:00
.cmake.conf pro2cmake.py: Generate .cmake.conf files for versioning 2020-04-30 17:44:03 +00:00
.gitattributes Update the git-archive export options 2012-09-07 15:39:31 +02:00
.gitignore Remove ANGLE 2020-05-26 15:11:40 +02:00
.qmake.conf Bump version 2019-12-17 12:41:31 +01:00
.tag Update the git-archive export options 2012-09-07 15:39:31 +02:00
CMakeLists.txt pro2cmake.py: Generate .cmake.conf files for versioning 2020-04-30 17:44:03 +00:00
config_help.txt Remove ANGLE 2020-05-26 15:11:40 +02:00
configure Compile QRegularExpression into qmake 2020-05-05 18:41:20 +02:00
configure.bat Don't compile qmake in c++11 mode 2020-02-03 17:43:30 +01:00
configure.cmake CMake: Generate information about 3rdparty libs in module .pri files 2020-05-19 13:26:53 +02:00
configure.json Don't enable -headerclean by default even for developer builds 2020-05-14 19:16:33 +02:00
configure.pri Android: Increase minimum API level to Android-23 / Android 6 2020-03-04 08:28:04 +01:00
dependencies.yaml Re-add dependencies.yaml now that qt5.git wip/qt6 builds fine 2019-09-18 13:19:31 +02:00
header.BSD Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.COMM Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.FDL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.GPL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.GPL-EXCEPT Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL3 Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL3-COMM Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL-NOGPL2 Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL-ONLY Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.MIT qsimd: add support for new x86 CPU features 2018-05-05 06:20:07 +00:00
INSTALL INSTALL: Remove outdated reference to Windows CE 2019-02-13 13:01:57 +00:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.GPL2 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3-EXCEPT Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPLv3 Remove LICENSE.GPLv3, LICENSE.LGPLv21, LGPL_EXCEPTION.txt 2018-04-16 11:02:14 +00:00
LICENSE.QT-LICENSE-AGREEMENT Update enterprise license agreement v4.2.1 2019-12-18 13:07:19 +02:00
qtbase.pro nuke configure -host-option 2016-12-13 18:55:59 +00:00
sync.profile Remove ANGLE 2020-05-26 15:11:40 +02:00