Index: source/ariba/utility/configuration/Configuration.cpp
===================================================================
--- source/ariba/utility/configuration/Configuration.cpp	(revision 3690)
+++ source/ariba/utility/configuration/Configuration.cpp	(revision 5316)
@@ -51,9 +51,18 @@
 void Configuration::setConfigFilename(string filename){
 	CONFIG_FILE = filename;
-	instance().reload();
+	if(haveConfig())
+		instance().reload();
 }
 
 Configuration::~Configuration(){
 	delete config;
+}
+
+bool Configuration::haveConfig(){
+	std::ifstream in( CONFIG_FILE.c_str() );
+	if( !in ) return false;
+
+	in.close();
+	return true;
 }
 
@@ -64,4 +73,5 @@
 
 bool Configuration::exists(const string& name){
+	if(config == NULL) return false;
 	return config->keyExists( name );
 }
Index: source/ariba/utility/configuration/Configuration.h
===================================================================
--- source/ariba/utility/configuration/Configuration.h	(revision 3690)
+++ source/ariba/utility/configuration/Configuration.h	(revision 5316)
@@ -63,4 +63,5 @@
 	static Configuration& instance();
 	static void setConfigFilename(string filename);
+	static bool haveConfig();
 
 	/**
