QtCore: use new qEnvironmentVariableIs{Set,Empty}()
authorMarc Mutz <marc.mutz@kdab.com>
Mon, 6 Aug 2012 22:10:11 +0000 (00:10 +0200)
committerQt by Nokia <qt-info@nokia.com>
Tue, 14 Aug 2012 18:21:06 +0000 (20:21 +0200)
In particular, qEmergencyOut() is now completely exception-free.

Incidentally, this patch shows that Qt isn't consistent in how it
treats empty environment variables used as flags, but that is something
for a separate commit. This patch aims to be behaviour-preserving,
except in exceptional circumstances, of course.

Change-Id: Ie106e7b430e1ab086c40c81cc1e56cd0e5400cb4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
src/corelib/global/qlogging.cpp
src/corelib/kernel/qcoreapplication.cpp
src/corelib/kernel/qeventdispatcher_glib.cpp
src/corelib/mimetypes/qmimeprovider.cpp
src/corelib/thread/qthread_unix.cpp
src/platformsupport/eventdispatchers/qgenericunixeventdispatcher.cpp

index 5270213..fb17496 100644 (file)
@@ -126,7 +126,7 @@ static void qEmergencyOut(QtMsgType msgType, const char *msg, va_list ap) Q_DECL
 
     if (msgType == QtFatalMsg
             || (msgType == QtWarningMsg
-                && (!qgetenv("QT_FATAL_WARNINGS").isNull())) ) {
+                && qEnvironmentVariableIsSet("QT_FATAL_WARNINGS"))) {
 #if defined(Q_CC_MSVC) && defined(QT_DEBUG) && defined(_DEBUG) && defined(_CRT_ERROR)
         // get the current report mode
         int reportMode = _CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_WNDW);
@@ -679,7 +679,7 @@ void qt_message_output(QtMsgType msgType, const QMessageLogContext &context, con
 
     if (msgType == QtFatalMsg
             || (msgType == QtWarningMsg
-                && (!qgetenv("QT_FATAL_WARNINGS").isNull())) ) {
+                && qEnvironmentVariableIsSet("QT_FATAL_WARNINGS")) ) {
 
 #if defined(Q_CC_MSVC) && defined(QT_DEBUG) && defined(_DEBUG) && defined(_CRT_ERROR)
         // get the current report mode
index 4c1f159..d3fb7f4 100644 (file)
@@ -350,7 +350,7 @@ void QCoreApplicationPrivate::createEventDispatcher()
     eventDispatcher = new QEventDispatcherBlackberry(q);
 #  else
 #  if !defined(QT_NO_GLIB)
-    if (qgetenv("QT_NO_GLIB").isEmpty() && QEventDispatcherGlib::versionSupported())
+    if (qEnvironmentVariableIsEmpty("QT_NO_GLIB") && QEventDispatcherGlib::versionSupported())
         eventDispatcher = new QEventDispatcherGlib(q);
     else
 #  endif
index 3f75c4e..73abe8c 100644 (file)
@@ -293,7 +293,7 @@ static GSourceFuncs postEventSourceFuncs = {
 QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(GMainContext *context)
     : mainContext(context)
 {
-    if (qgetenv("QT_NO_THREADED_GLIB").isEmpty()) {
+    if (qEnvironmentVariableIsEmpty("QT_NO_THREADED_GLIB")) {
         static QBasicMutex mutex;
         QMutexLocker locker(&mutex);
         if (!g_thread_supported())
index 1f7d06c..3b0e0f5 100644 (file)
@@ -188,7 +188,7 @@ enum {
 bool QMimeBinaryProvider::isValid()
 {
 #if defined(QT_USE_MMAP)
-    if (!qgetenv("QT_NO_MIME_CACHE").isEmpty())
+    if (!qEnvironmentVariableIsEmpty("QT_NO_MIME_CACHE"))
         return false;
 
     Q_ASSERT(m_cacheFiles.isEmpty()); // this method is only ever called once
index b3040f3..e9db276 100644 (file)
@@ -256,8 +256,8 @@ void QThreadPrivate::createEventDispatcher(QThreadData *data)
     data->eventDispatcher = new QEventDispatcherBlackberry;
 #else
 #if !defined(QT_NO_GLIB)
-    if (qgetenv("QT_NO_GLIB").isEmpty()
-        && qgetenv("QT_NO_THREADED_GLIB").isEmpty()
+    if (qEnvironmentVariableIsEmpty("QT_NO_GLIB")
+        && qEnvironmentVariableIsEmpty("QT_NO_THREADED_GLIB")
         && QEventDispatcherGlib::versionSupported())
         data->eventDispatcher = new QEventDispatcherGlib;
     else
index 5853ed5..a109295 100644 (file)
@@ -48,7 +48,7 @@ QT_BEGIN_NAMESPACE
 class QAbstractEventDispatcher *createUnixEventDispatcher()
 {
 #if !defined(QT_NO_GLIB) && !defined(Q_OS_WIN)
-    if (qgetenv("QT_NO_GLIB").isEmpty() && QEventDispatcherGlib::versionSupported())
+    if (qEnvironmentVariableIsEmpty("QT_NO_GLIB") && QEventDispatcherGlib::versionSupported())
         return new QPAEventDispatcherGlib();
     else
 #endif