From ccc46bbe46f6385968f5e4fb71bb20a4fc37f73a Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Tue, 28 Jun 2016 13:28:28 +0200 Subject: [PATCH] Fix crashes with (Runnable|Connection)::is() Another regression of 3f11ef92167 Default constructed Runnables/Connections have zero d pointer. Task-number: QTCREATORBUG-16507 Change-Id: I230b661eba4c408a353a711f93f3163160980793 Reviewed-by: Maurice Kalinowski Reviewed-by: hjk --- src/plugins/projectexplorer/runconfiguration.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/plugins/projectexplorer/runconfiguration.h b/src/plugins/projectexplorer/runconfiguration.h index 225c04bf437..fd4fa288429 100644 --- a/src/plugins/projectexplorer/runconfiguration.h +++ b/src/plugins/projectexplorer/runconfiguration.h @@ -195,7 +195,7 @@ public: void operator=(Runnable other) { d = std::move(other.d); } template bool is() const { - return d.get()->typeId() == T::staticTypeId; + return d.get() && (d.get()->typeId() == T::staticTypeId); } template const T &as() const { @@ -219,7 +219,7 @@ public: void operator=(Connection other) { d = std::move(other.d); } template bool is() const { - return d.get()->typeId() == T::staticTypeId; + return d.get() && (d.get()->typeId() == T::staticTypeId); } template const T &as() const {