diff --git a/Common/StringUtils.cpp b/Common/StringUtils.cpp
index 1b496dfbc77b77fd1f3f85246349acde79ee8a9a..7c8d4cb9a5e388ebfa0ba92ed90cf116dba99b6a 100644
--- a/Common/StringUtils.cpp
+++ b/Common/StringUtils.cpp
@@ -77,7 +77,8 @@ std::string FixRelativePath(const std::string &reference, const std::string &in)
 {
   if(in.empty()) return "";
 
-  if(in[0] == '/' || in[0] == '\\' || (in.size() > 2 && in[1] == ':')){
+  if(in[0] == '/' || in[0] == '\\' ||
+     (in.size() > 3 && in[1] == ':' && (in[2] == '/' || in[2] == '\\'))){
     // do nothing: 'in' is an absolute path
     return in;
   }