diff --git a/Code/Mantid/Framework/DataHandling/src/Load.cpp b/Code/Mantid/Framework/DataHandling/src/Load.cpp
index 18f27aa56f29b4500be1f48b2fca8c33edea4d09..c04c760d1ecd90a98967c4ebe83123d3d266b252 100644
--- a/Code/Mantid/Framework/DataHandling/src/Load.cpp
+++ b/Code/Mantid/Framework/DataHandling/src/Load.cpp
@@ -455,7 +455,6 @@ namespace Mantid
 
     void Load::loadMultipleFiles()
     {
-      MultipleFileProperty * multiFileProp = dynamic_cast<MultipleFileProperty*>(getPointerToProperty("Filename"));
       const std::vector<std::vector<std::string> > allFilenames = getProperty("Filename");
       std::string outputWsName = getProperty("OutputWorkspace");
 
@@ -684,6 +683,15 @@ namespace Mantid
       catch(std::runtime_error&)
       { }
 
+      // General IMDWorkspace
+      try
+      {
+        IMDWorkspace_sptr childWS = loader->getProperty(propName);
+        return childWS;
+      }
+      catch(std::runtime_error&)
+      { }
+
       // Just workspace?
       try
       {
@@ -693,7 +701,7 @@ namespace Mantid
       catch(std::runtime_error&)
       { }
 
-      g_log.debug() << "Workspace property " << propName << " did not return to MatrixWorkspace, EventWorkspace, or IMDEventWorkspace." << std::endl;
+      g_log.debug() << "Workspace property " << propName << " did not return to MatrixWorkspace, EventWorkspace, IMDEventWorkspace, IMDWorkspace" << std::endl;
       return Workspace_sptr();
     }
 
diff --git a/Code/Mantid/Framework/DataHandling/src/LoadNexusProcessed.cpp b/Code/Mantid/Framework/DataHandling/src/LoadNexusProcessed.cpp
index c2ba84cd474cb49a7e8049fbe82ec53549a5582a..548d819bd64811f02561c514f490d7748ea2afb0 100644
--- a/Code/Mantid/Framework/DataHandling/src/LoadNexusProcessed.cpp
+++ b/Code/Mantid/Framework/DataHandling/src/LoadNexusProcessed.cpp
@@ -1650,12 +1650,10 @@ size_t LoadNexusProcessed::calculateWorkspacesize(const std::size_t numberofspec
       int count= getNexusEntryTypes(filePath,entryName,definition);
       if(count<=-1)
       {
-        g_log.error("Error reading file " + filePath);
         throw Exception::FileError("Unable to read data in File:" , filePath);
       }
       else if(count==0)
       {
-        g_log.error("Error no entries found in " + filePath);
         throw Exception::FileError("Error no entries found in " , filePath);
       }
       int ret=0;