diff --git a/daemon/src/config/yamlparser.cpp b/daemon/src/config/yamlparser.cpp
index 2dd58cfc3b1b0b98681a72694dbbae0d08a6257d..8a0b5129c8d03d2775ac5a2dfd6d2e82c9c94c5a 100644
--- a/daemon/src/config/yamlparser.cpp
+++ b/daemon/src/config/yamlparser.cpp
@@ -219,10 +219,7 @@ void YamlParser::processStream()
 
 void YamlParser::processDocument()
 {
-    doc_ = new YamlDocument();
-
-    if (!doc_)
-        throw YamlParserException("Not able to create new document");
+    doc_ = new YamlDocument;
 
     for (; (eventIndex_ < eventNumber_) and (events_[eventIndex_].type != YAML_DOCUMENT_END_EVENT); ++eventIndex_) {
         switch (events_[eventIndex_].type) {
@@ -366,6 +363,8 @@ void YamlParser::processMapping(YamlNode *topNode)
 
 void YamlParser::constructNativeData()
 {
+    if (!doc_)
+        throw YamlParserException("YAML Document not initialized");
     Sequence *seq = doc_->getSequence();
 
     for (Sequence::iterator iter = seq->begin(); iter != seq->end(); ++iter) {