From 946c1a578a7c1e6acc95ef8095fa8a6ff026334b Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Tue, 14 Jun 2016 07:49:13 -0700 Subject: Fix build: ftok(3) requires sys/ipc.h Task-number: QTBUG-54069 Change-Id: Ib57b52598e2f452985e9fffd1457fa9c7ad3bac0 Reviewed-by: Giuseppe D'Angelo --- src/corelib/kernel/qcore_unix_p.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/corelib/kernel') diff --git a/src/corelib/kernel/qcore_unix_p.h b/src/corelib/kernel/qcore_unix_p.h index 05711354ff..07725b8cd2 100644 --- a/src/corelib/kernel/qcore_unix_p.h +++ b/src/corelib/kernel/qcore_unix_p.h @@ -72,6 +72,10 @@ #include #include +#if !defined(QT_POSIX_IPC) && !defined(QT_NO_SHAREDMEMORY) && !defined(Q_OS_ANDROID) +# include +#endif + #if defined(Q_OS_VXWORKS) # include #endif -- cgit v1.2.3 From daade9b90dd39aa844cb683af776b802b0786ba7 Mon Sep 17 00:00:00 2001 From: Giuseppe D'Angelo Date: Thu, 16 Jun 2016 11:56:42 +0200 Subject: QEventLoop: better describe the exception safety of Qt 1) In general it's unsafe to let exceptions propagate through Qt code, so document that. 2) Add a note that overriding notify() makes sense only in Qt 5, in Qt 6 it's going away. 3) The advice applies also to applications not using QApplication, but just QCoreApplication. Change-Id: I4f6e74c53da757faf2eeaa9de226ceba55c52536 Reviewed-by: Thiago Macieira Reviewed-by: Martin Smith --- src/corelib/kernel/qeventloop.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/corelib/kernel') diff --git a/src/corelib/kernel/qeventloop.cpp b/src/corelib/kernel/qeventloop.cpp index dca25ce968..0ee677d213 100644 --- a/src/corelib/kernel/qeventloop.cpp +++ b/src/corelib/kernel/qeventloop.cpp @@ -182,8 +182,10 @@ int QEventLoop::exec(ProcessEventsFlags flags) { if (exceptionCaught) { qWarning("Qt has caught an exception thrown from an event handler. Throwing\n" - "exceptions from an event handler is not supported in Qt. You must\n" - "reimplement QApplication::notify() and catch all exceptions there.\n"); + "exceptions from an event handler is not supported in Qt.\n" + "You must not let any exception whatsoever propagate through Qt code.\n" + "If that is not possible, in Qt 5 you must at least reimplement\n" + "QCoreApplication::notify() and catch all exceptions there.\n"); } locker.relock(); QEventLoop *eventLoop = d->threadData->eventLoops.pop(); -- cgit v1.2.3 From e46e112eb10850801218bd810ecaeb8fd29f4c34 Mon Sep 17 00:00:00 2001 From: Anton Kudryavtsev Date: Fri, 8 Jul 2016 13:51:06 +0300 Subject: Optimize string usage Use QStringBuilder more. Use QL1S directly, without QString construction. Change-Id: Iad844391367681fc1013b9725403d009e7c346e6 Reviewed-by: Edward Welbourne --- src/corelib/kernel/qmetaobject.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/corelib/kernel') diff --git a/src/corelib/kernel/qmetaobject.cpp b/src/corelib/kernel/qmetaobject.cpp index 2f2694f219..f4f75e39e6 100644 --- a/src/corelib/kernel/qmetaobject.cpp +++ b/src/corelib/kernel/qmetaobject.cpp @@ -1353,7 +1353,7 @@ static inline QByteArray findMethodCandidates(const QMetaObject *metaObject, con for (int i = 0; i < metaObject->methodCount(); ++i) { const QMetaMethod method = metaObject->method(i); if (method.name() == memberByteArray) - candidateMessage.append(" " + method.methodSignature() + '\n'); + candidateMessage += " " + method.methodSignature() + '\n'; } if (!candidateMessage.isEmpty()) { candidateMessage.prepend("\nCandidates are:\n"); -- cgit v1.2.3