From f96a19d1b474292940dab3a20194a88395aca8ed Mon Sep 17 00:00:00 2001 From: Harald Fernengel Date: Thu, 7 Jul 2011 15:31:19 +0200 Subject: Fix a crash when D-Bus library can't be loaded In certain sandboxes, we have libQtDBus, but not D-Bus. QtDBus shouldn't crash in that case, but return non-working QDBusConnection instances instead. Change-Id: Ia4ac78d1197bae50cde0cf07e6fc66fc25b85011 Reviewed-on: http://codereview.qt.nokia.com/1319 Reviewed-by: Qt Sanity Bot Reviewed-by: Robert Griebl --- src/dbus/qdbus_symbols.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/dbus/qdbus_symbols.cpp') diff --git a/src/dbus/qdbus_symbols.cpp b/src/dbus/qdbus_symbols.cpp index 44597c39b6..fed18350bb 100644 --- a/src/dbus/qdbus_symbols.cpp +++ b/src/dbus/qdbus_symbols.cpp @@ -62,6 +62,12 @@ void qdbus_unloadLibDBus() bool qdbus_loadLibDBus() { +#ifdef QT_BUILD_INTERNAL + // this is to simulate a library load failure for our autotest suite. + if (!qgetenv("QT_SIMULATE_DBUS_LIBFAIL").isEmpty()) + return false; +#endif + static volatile bool triedToLoadLibrary = false; #ifndef QT_NO_THREAD QMutexLocker locker(QMutexPool::globalInstanceGet((void *)&qdbus_resolve_me)); -- cgit v1.2.3