summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2021-11-03 14:26:47 +0100
committerEike Ziller <eike.ziller@qt.io>2021-11-03 14:26:47 +0100
commitc2e27bd927c8f041c04ad6e4217f2856a4cddace (patch)
tree836e66b0c388ed43f0d818f5720770cf7b539fea
parent7e614b599e017a8200b7a78df93eb0500cc599a4 (diff)
parentad8a04f410e7293bba80c9c02640739f92588deb (diff)
downloadqt-creator-c2e27bd927c8f041c04ad6e4217f2856a4cddace.tar.gz
Merge remote-tracking branch 'origin/5.0' into 6.0
Change-Id: I436d15f2aeefbf6fc80340f01398509c213fc1b1
-rw-r--r--README.md22
-rw-r--r--dist/changes-5.0.3.md56
-rw-r--r--doc/qtcreator/src/overview/creator-acknowledgements.qdoc35
-rw-r--r--src/plugins/cppeditor/cppprojectupdater.cpp7
4 files changed, 105 insertions, 15 deletions
diff --git a/README.md b/README.md
index 02f5e6c7f4..83c18a47da 100644
--- a/README.md
+++ b/README.md
@@ -312,7 +312,10 @@ we thank the authors who made this possible:
With backported/additional patches from https://code.qt.io/clang/llvm-project.git
-### Reference implementation for std::experimental::optional
+### Optional
+
+ A single-header header-only library for representing optional (nullable)
+ objects for C++14 (and C++11 to some extent) and passing them by value.
https://github.com/akrzemi1/Optional
@@ -327,7 +330,9 @@ we thank the authors who made this possible:
The idea and interface is based on Boost.Optional library
authored by Fernando Luis Cacciola Carballal
-### Implementation for std::variant
+### MPark.Variant
+
+ MPark.Variant is an implementation of C++17 std::variant for C++11/14/17.
https://github.com/mpark/variant
@@ -338,7 +343,11 @@ we thank the authors who made this possible:
Distributed under the Boost Software License, Version 1.0.
(See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
-### Implementation for std::span
+### std::span implementation for C++11 and later
+
+ A single-header implementation of C++20's std::span, conforming to the C++20
+ committee draft. It is compatible with C++11, but will use newer language
+ features if they are available.
https://github.com/tcbrindle/span
@@ -398,7 +407,10 @@ we thank the authors who made this possible:
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-### SQLite, in-process library that implements a SQL database engine
+### SQLite (version 3.8.10.2)
+
+SQLite is a C-language library that implements a small, fast, self-contained,
+high-reliability, full-featured, SQL database engine.
SQLite (https://www.sqlite.org) is in the Public Domain.
@@ -490,7 +502,7 @@ SQLite (https://www.sqlite.org) is in the Public Domain.
from Florian Loitsch which is licensed under the MIT License (see above).
Copyright © 2009 Florian Loitsch
-### Minitrace
+### minitrace
Simple C/C++ library for producing JSON traces.
diff --git a/dist/changes-5.0.3.md b/dist/changes-5.0.3.md
new file mode 100644
index 0000000000..2c8f9d5bd1
--- /dev/null
+++ b/dist/changes-5.0.3.md
@@ -0,0 +1,56 @@
+Qt Creator 5.0.3
+================
+
+Qt Creator version 5.0.3 contains bug fixes.
+
+The most important changes are listed in this document. For a complete list of
+changes, see the Git log for the Qt Creator sources that you can check out from
+the public Git repository. For example:
+
+ git clone git://code.qt.io/qt-creator/qt-creator.git
+ git log --cherry-pick --pretty=oneline origin/v5.0.2..v5.0.3
+
+Editing
+-------
+
+### QML
+
+* Fixed possible crash on shutdown
+
+### Image Viewer
+
+* Fixed crash when opening invalid movie (QTCREATORBUG-26377)
+
+Projects
+--------
+
+### qmake
+
+* Fixed handling of `QMAKE_EXTRA_COMPILERS` (QTCREATORBUG-26323)
+
+Platforms
+---------
+
+### macOS
+
+* Fixed crash when opening qmake projects on ARM Macs (QTBUG-97085)
+
+### Android
+
+* Fixed issue in installation step with qmake projects (QTCREATORBUG-26357)
+
+Credits for these changes go to:
+--------------------------------
+Assam Boudjelthia
+Christian Kandeler
+Eike Ziller
+Henning Gruendl
+Jaroslaw Kobus
+Johanna Vanhatapio
+Jörg Bornemann
+Kai Köhne
+Kaj Grönholm
+Leena Miettinen
+Robert Löhning
+Thomas Hartmann
+Tim Jenssen
diff --git a/doc/qtcreator/src/overview/creator-acknowledgements.qdoc b/doc/qtcreator/src/overview/creator-acknowledgements.qdoc
index 4ec9eb9ea2..2e6b71d0f7 100644
--- a/doc/qtcreator/src/overview/creator-acknowledgements.qdoc
+++ b/doc/qtcreator/src/overview/creator-acknowledgements.qdoc
@@ -385,7 +385,11 @@
\li \l{http://code.qt.io/cgit/clang/clang.git}
\endlist
- \li \b{Reference implementation for std::experimental::optional}
+ \li \b{Optional}
+
+ A single-header header-only library for representing optional
+ (nullable) objects for C++14 (and C++11 to some extent) and passing
+ them by value.
Copyright (C) 2011-2012 Andrzej Krzemienski
@@ -404,7 +408,9 @@
\li \l{https://code.qt.io/cgit/qt-creator/qt-creator.git/tree/src/libs/3rdparty/optional}
\endlist
- \li \b{Implementation for std::variant}
+ \li \b{MPark.Variant}
+
+ MPark.Variant is an implementation of C++17 std::variant for C++11/14/17.
Copyright Michael Park, 2015-2017
@@ -419,7 +425,11 @@
\li \l{https://code.qt.io/cgit/qt-creator/qt-creator.git/tree/src/libs/3rdparty/variant}
\endlist
- \li \b{Implementation for std::span}
+ \li \b{std::span implementation for C++11 and later}
+
+ A single-header implementation of C++20's std::span, conforming to
+ the C++20 committee draft. It is compatible with C++11, but will use
+ newer language features if they are available.
Copyright Tristan Brindle, 2018
@@ -613,7 +623,10 @@
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
\endcode
- \li \b{SQLite, an embedded database. Version 3.8.10.2}\br\br
+ \li \b{SQLite (version 3.8.10.2)}
+
+ SQLite is a C-language library that implements a small, fast,
+ self-contained, high-reliability, full-featured, SQL database engine.
The author or authors of this code dedicate any and all copyright
interest in this code to the public domain. We make this dedication
@@ -628,11 +641,15 @@
\li \l{https://code.qt.io/cgit/qt-creator/qt-creator.git/tree/src/libs/3rdparty/sqlite}
\endlist
- \li \b{three.js (license MIT)}\br
- Copyright (C) 2010-2015 three.js authors\br
+ \li \b{three.js}
+
+ Copyright (C) 2010-2015 three.js authors
+
+ MIT License.
+
share/qtcreator/templates/wizards/projects/qmake/qtcanvas3dapplication
- \li \b{OpenSSL toolkit}
+ \li \b{OpenSSL}
The OpenSSL toolkit stays under a double license, i.e. both the conditions of
the OpenSSL License and the original SSLeay license apply to the toolkit.
@@ -753,7 +770,7 @@
[including the GNU Public Licence.]
\endcode
- \li \b{Mesa LLVMPipe, 3D graphics library}
+ \li \b{LLVMPipe - The Mesa 3D Graphics Library}
Mesa is a 3D graphics library with an API which is very similar to that
of OpenGL. The llvmpipe software renderer enables the running of OpenGL
@@ -826,7 +843,7 @@
from Florian Loitsch which is licensed under the MIT License (see above).
Copyright (C) 2009 Florian Loitsch
- \li \b Minitrace
+ \li \b minitrace
Simple C/C++ library for producing JSON traces.
diff --git a/src/plugins/cppeditor/cppprojectupdater.cpp b/src/plugins/cppeditor/cppprojectupdater.cpp
index 4e97779a3e..96e7f3b66c 100644
--- a/src/plugins/cppeditor/cppprojectupdater.cpp
+++ b/src/plugins/cppeditor/cppprojectupdater.cpp
@@ -90,11 +90,16 @@ void CppProjectUpdater::update(const ProjectUpdateInfo &projectUpdateInfo,
// extra compilers
for (QPointer<ExtraCompiler> compiler : qAsConst(m_extraCompilers)) {
if (compiler->isDirty()) {
- auto watcher = new QFutureWatcher<void>;
+ QPointer<QFutureWatcher<void>> watcher = new QFutureWatcher<void>;
// queued connection to delay after the extra compiler updated its result contents,
// which is also done in the main thread when compiler->run() finished
connect(watcher, &QFutureWatcherBase::finished,
this, [this, watcher] {
+ // In very unlikely case the CppProjectUpdater::cancel() could have been
+ // invoked after posting the finished() signal and before this handler
+ // gets called. In this case the watcher is already deleted.
+ if (!watcher)
+ return;
m_projectUpdateFutureInterface->setProgressValue(
m_projectUpdateFutureInterface->progressValue() + 1);
m_extraCompilersFutureWatchers.remove(watcher);