From 54a93af966d3aca8a970e0291d237d95cc3aec64 Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Wed, 29 May 2019 18:15:45 +0200 Subject: QtCore: use qUtf16Printable and %ls, qErrnoWarning() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ... instead of qPrintable(), %s, and explicit qt_error_string(). Saves 2KiB in text size on optimized Linux AMD64 GCC 9.1 builds. Change-Id: I98b6717da1ed1b678f01167d704a96f10da47966 Reviewed-by: MÃ¥rten Nordheim Reviewed-by: Thiago Macieira --- src/corelib/kernel/qeventdispatcher_win.cpp | 6 +++--- src/corelib/kernel/qobject.cpp | 4 ++-- src/corelib/mimetypes/qmimeprovider.cpp | 2 +- src/corelib/plugin/qlibrary.cpp | 20 ++++++++++---------- src/corelib/statemachine/qstatemachine.cpp | 4 ++-- src/corelib/thread/qmutex_unix.cpp | 2 +- src/corelib/thread/qthread_unix.cpp | 8 +++----- src/corelib/thread/qwaitcondition_unix.cpp | 2 +- 8 files changed, 23 insertions(+), 25 deletions(-) diff --git a/src/corelib/kernel/qeventdispatcher_win.cpp b/src/corelib/kernel/qeventdispatcher_win.cpp index acc66ed107..9ec649394d 100644 --- a/src/corelib/kernel/qeventdispatcher_win.cpp +++ b/src/corelib/kernel/qeventdispatcher_win.cpp @@ -342,7 +342,7 @@ QWindowsMessageWindowClassContext::QWindowsMessageWindowClassContext() wc.lpszClassName = className; atom = RegisterClass(&wc); if (!atom) { - qErrnoWarning("%s RegisterClass() failed", qPrintable(qClassName)); + qErrnoWarning("%ls RegisterClass() failed", qUtf16Printable(qClassName)); delete [] className; className = 0; } @@ -504,8 +504,8 @@ void QEventDispatcherWin32::installMessageHook() d->getMessageHook = SetWindowsHookEx(WH_GETMESSAGE, (HOOKPROC) qt_GetMessageHook, NULL, GetCurrentThreadId()); if (Q_UNLIKELY(!d->getMessageHook)) { int errorCode = GetLastError(); - qFatal("Qt: INTERNAL ERROR: failed to install GetMessage hook: %d, %s", - errorCode, qPrintable(qt_error_string(errorCode))); + qFatal("Qt: INTERNAL ERROR: failed to install GetMessage hook: %d, %ls", + errorCode, qUtf16Printable(qt_error_string(errorCode))); } } diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index 9c3e67c781..965857d408 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -1759,11 +1759,11 @@ void QObject::killTimer(int id) int at = d->extraData ? d->extraData->runningTimers.indexOf(id) : -1; if (at == -1) { // timer isn't owned by this object - qWarning("QObject::killTimer(): Error: timer id %d is not valid for object %p (%s, %s), timer has not been killed", + qWarning("QObject::killTimer(): Error: timer id %d is not valid for object %p (%s, %ls), timer has not been killed", id, this, metaObject()->className(), - qPrintable(objectName())); + qUtf16Printable(objectName())); return; } diff --git a/src/corelib/mimetypes/qmimeprovider.cpp b/src/corelib/mimetypes/qmimeprovider.cpp index 7e2696b719..a3a6b9615c 100644 --- a/src/corelib/mimetypes/qmimeprovider.cpp +++ b/src/corelib/mimetypes/qmimeprovider.cpp @@ -673,7 +673,7 @@ void QMimeXMLProvider::load(const QString &fileName) { QString errorMessage; if (!load(fileName, &errorMessage)) - qWarning("QMimeDatabase: Error loading %s\n%s", qPrintable(fileName), qPrintable(errorMessage)); + qWarning("QMimeDatabase: Error loading %ls\n%ls", qUtf16Printable(fileName), qUtf16Printable(errorMessage)); } bool QMimeXMLProvider::load(const QString &fileName, QString *errorMessage) diff --git a/src/corelib/plugin/qlibrary.cpp b/src/corelib/plugin/qlibrary.cpp index 3aadd1a73b..533a2790b9 100644 --- a/src/corelib/plugin/qlibrary.cpp +++ b/src/corelib/plugin/qlibrary.cpp @@ -241,8 +241,8 @@ static bool findPatternUnloaded(const QString &library, QLibraryPrivate *lib) if (lib) lib->errorString = file.errorString(); if (qt_debug_component()) { - qWarning("%s: %s", QFile::encodeName(library).constData(), - qPrintable(QSystemError::stdString())); + qWarning("%s: %ls", QFile::encodeName(library).constData(), + qUtf16Printable(QSystemError::stdString())); } return false; } @@ -275,7 +275,7 @@ static bool findPatternUnloaded(const QString &library, QLibraryPrivate *lib) int r = QElfParser().parse(filedata, fdlen, library, lib, &pos, &fdlen); if (r == QElfParser::Corrupt || r == QElfParser::NotElf) { if (lib && qt_debug_component()) { - qWarning("QElfParser: %s",qPrintable(lib->errorString)); + qWarning("QElfParser: %ls", qUtf16Printable(lib->errorString)); } return false; } else if (r == QElfParser::QtMetaDataSection) { @@ -292,7 +292,7 @@ static bool findPatternUnloaded(const QString &library, QLibraryPrivate *lib) int r = QMachOParser::parse(filedata, fdlen, library, &errorString, &pos, &fdlen); if (r == QMachOParser::NotSuitable) { if (qt_debug_component()) - qWarning("QMachOParser: %s", qPrintable(errorString)); + qWarning("QMachOParser: %ls", qUtf16Printable(errorString)); if (lib) lib->errorString = errorString; return false; @@ -319,8 +319,8 @@ static bool findPatternUnloaded(const QString &library, QLibraryPrivate *lib) QString errMsg; QJsonDocument doc = qJsonFromRawLibraryMetaData(data, fdlen, &errMsg); if (doc.isNull()) { - qWarning("Found invalid metadata in lib %s: %s", - qPrintable(library), qPrintable(errMsg)); + qWarning("Found invalid metadata in lib %ls: %ls", + qUtf16Printable(library), qUtf16Printable(errMsg)); } else { lib->metaData = doc.object(); if (qt_debug_component()) @@ -356,11 +356,11 @@ static void installCoverageTool(QLibraryPrivate *libPrivate) if (qt_debug_component()) { if (ret >= 0) { - qDebug("coverage data for %s registered", - qPrintable(libPrivate->fileName)); + qDebug("coverage data for %ls registered", + qUtf16Printable(libPrivate->fileName)); } else { - qWarning("could not register %s: error %d; coverage data may be incomplete", - qPrintable(libPrivate->fileName), + qWarning("could not register %ls: error %d; coverage data may be incomplete", + qUtf16Printable(libPrivate->fileName), ret); } } diff --git a/src/corelib/statemachine/qstatemachine.cpp b/src/corelib/statemachine/qstatemachine.cpp index e6dfacc0f5..3a86d971e2 100644 --- a/src/corelib/statemachine/qstatemachine.cpp +++ b/src/corelib/statemachine/qstatemachine.cpp @@ -1526,8 +1526,8 @@ void QStateMachinePrivate::setError(QStateMachine::Error errorCode, QAbstractSta addAncestorStatesToEnter(currentErrorState, rootState(), pendingErrorStates, pendingErrorStatesForDefaultEntry); pendingErrorStates -= configuration; } else { - qWarning("Unrecoverable error detected in running state machine: %s", - qPrintable(errorString)); + qWarning("Unrecoverable error detected in running state machine: %ls", + qUtf16Printable(errorString)); q->stop(); } } diff --git a/src/corelib/thread/qmutex_unix.cpp b/src/corelib/thread/qmutex_unix.cpp index a92ac4f943..df2f606a23 100644 --- a/src/corelib/thread/qmutex_unix.cpp +++ b/src/corelib/thread/qmutex_unix.cpp @@ -58,7 +58,7 @@ QT_BEGIN_NAMESPACE static void report_error(int code, const char *where, const char *what) { if (code != 0) - qWarning("%s: %s failure: %s", where, what, qPrintable(qt_error_string(code))); + qErrnoWarning(code, "%s: %s failure", where, what); } #ifdef QT_UNIX_SEMAPHORE diff --git a/src/corelib/thread/qthread_unix.cpp b/src/corelib/thread/qthread_unix.cpp index 8328e514a8..3d4c906dc2 100644 --- a/src/corelib/thread/qthread_unix.cpp +++ b/src/corelib/thread/qthread_unix.cpp @@ -714,8 +714,7 @@ void QThread::start(Priority priority) #endif // _POSIX_THREAD_ATTR_STACKSIZE if (code) { - qWarning("QThread::start: Thread stack size error: %s", - qPrintable(qt_error_string(code))); + qErrnoWarning(code, "QThread::start: Thread stack size error"); // we failed to set the stacksize, and as the documentation states, // the thread will fail to run... @@ -740,7 +739,7 @@ void QThread::start(Priority priority) pthread_attr_destroy(&attr); if (code) { - qWarning("QThread::start: Thread creation error: %s", qPrintable(qt_error_string(code))); + qErrnoWarning(code, "QThread::start: Thread creation error"); d->running = false; d->finished = false; @@ -759,8 +758,7 @@ void QThread::terminate() int code = pthread_cancel(from_HANDLE(d->data->threadId.load())); if (code) { - qWarning("QThread::start: Thread termination error: %s", - qPrintable(qt_error_string((code)))); + qErrnoWarning(code, "QThread::start: Thread termination error"); } #endif } diff --git a/src/corelib/thread/qwaitcondition_unix.cpp b/src/corelib/thread/qwaitcondition_unix.cpp index 0ba90763cf..dd7475cec5 100644 --- a/src/corelib/thread/qwaitcondition_unix.cpp +++ b/src/corelib/thread/qwaitcondition_unix.cpp @@ -72,7 +72,7 @@ __attribute__((weakref("__pthread_cond_timedwait_relative"))); static void report_error(int code, const char *where, const char *what) { if (code != 0) - qWarning("%s: %s failure: %s", where, what, qPrintable(qt_error_string(code))); + qErrnoWarning(code, "%s: %s failure", where, what); } void qt_initialize_pthread_cond(pthread_cond_t *cond, const char *where) -- cgit v1.2.3