From e40961df12f4edeee6c69250bfa9e9e8da09f37d Mon Sep 17 00:00:00 2001 From: Atlante45 Date: Sun, 14 Dec 2014 21:34:27 -0800 Subject: [PATCH] Checking that T is in fact derived from Dependency --- libraries/shared/src/DependencyManager.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libraries/shared/src/DependencyManager.h b/libraries/shared/src/DependencyManager.h index 2a81941b8a..87c7c7b4a6 100644 --- a/libraries/shared/src/DependencyManager.h +++ b/libraries/shared/src/DependencyManager.h @@ -16,6 +16,7 @@ #include #include +#include class DependencyManager { public: @@ -56,7 +57,9 @@ T* DependencyManager::get() { // Found no instance in hash so we create one. T* newInstance = new T(); - getInstanceHash().insert(typeId, dynamic_cast(newInstance)); + instance = dynamic_cast(newInstance); + assert(instance != NULL); // If this triggers, check that T is derived from Dependency + getInstanceHash().insert(typeId, instance); return newInstance; }