Go to file
Lars Knoll 7caaf4eb7f Don't rely on iterators being stable while modifying the hash
The Mapping struct referred to where it got inserted into the
source_index mapping table by a const iterator to the table. That
is rather fragile, as changing the table invalidates the iterator.

It happened to work with QHash in Qt 5, but will break with the new
implementation in Qt 6.

Instead simply store the key in the Mapping struct so that it can
be quickly found in the hash.

Also fix one place, where we unconditionally call erase on an iterator
returned by constFind(). Turns out constFind() did sometimes not find
the item in question and returns end().

Change-Id: I0420a06d496f640a3150478e8c644d4cc669ceff
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-02-09 17:41:52 +01:00
bin Add initial support for CMake "Ninja Multi-Config" generator 2020-01-27 11:47:57 +00:00
cmake Don't hardcode the library directory name 2020-01-31 10:10:10 +00:00
coin Add initial support for CMake "Ninja Multi-Config" generator 2020-01-27 11:47:57 +00:00
config.tests Add initial support for cross-building to iOS 2019-12-03 13:35:59 +00:00
dist Add changes file for Qt 5.14.0 2019-12-03 13:44:27 +01:00
doc Merge remote-tracking branch 'origin/dev' into merge-dev 2020-01-24 13:17:33 +01:00
examples Merge "Merge remote-tracking branch 'origin/wip/cmake' into dev" 2020-02-07 18:19:51 +00:00
lib Purge all fonts 2015-08-18 19:59:14 +00:00
mkspecs Use C++17 for qmake and force the build of everything with C++17 2020-02-08 09:49:07 +01:00
qmake Use C++17 for qmake and force the build of everything with C++17 2020-02-08 09:49:07 +01:00
src Don't rely on iterators being stable while modifying the hash 2020-02-09 17:41:52 +01:00
tests Blacklist tst_QGuiApplication::quitOnLastWindowClosedMulti on macOS in CI 2020-02-08 14:01:11 +01:00
util Merge remote-tracking branch 'origin/wip/cmake' into dev 2020-02-03 15:01:53 +00:00
.gitattributes Update the git-archive export options 2012-09-07 15:39:31 +02:00
.gitignore Merge remote-tracking branch 'origin/wip/qt6' into wip/cmake 2019-07-11 17:17:51 +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 Add INSTALL_MKSPECSDIR to the install locations 2020-01-31 10:09:39 +00:00
config_help.txt QtSQL: remove SQLite2 and TDS driver for Qt6 2020-02-07 20:22:44 +01:00
configure Use C++17 for qmake and force the build of everything with C++17 2020-02-08 09:49:07 +01:00
configure.bat Don't compile qmake in c++11 mode 2020-02-03 17:43:30 +01:00
configure.cmake Post Merge Fixes 2020-01-24 12:29:18 +00:00
configure.json Post Merge Fixes 2020-01-24 12:29:18 +00:00
configure.pri Merge remote-tracking branch 'origin/5.15' into dev 2020-01-04 15:32:34 +01:00
dependencies.yaml Re-add dependencies.yaml so repos outside qt5 can be built with Coin 2019-09-19 17:07:36 +00: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 Merge remote-tracking branch 'origin/5.15' into dev 2020-01-04 15:32:34 +01:00