diff --git a/Framework/Kernel/src/ConfigService.cpp b/Framework/Kernel/src/ConfigService.cpp
index f4ba9a1b8915180cfa591c015f354bd38eaa0f96..ce26df81dae645c1e3d4094fd8089879e274020c 100644
--- a/Framework/Kernel/src/ConfigService.cpp
+++ b/Framework/Kernel/src/ConfigService.cpp
@@ -1596,6 +1596,10 @@ void ConfigServiceImpl::appendDataSearchSubDir(const std::string &subdir) {
   } catch (Poco::PathSyntaxException &) {
     return;
   }
+
+  if (!subDirPath.isDirectory())
+    return;
+
   std::vector<std::string> newDataDirs = m_DataSearchDirs;
   std::vector<std::string>::const_iterator it = newDataDirs.begin();
   std::vector<std::string>::const_iterator end = newDataDirs.end();