0023852: OSD_Path interprets unc paths incorrectly
[occt.git] / src / OSD / OSD_Path.cxx
index 889173e..98842cb 100755 (executable)
@@ -1582,10 +1582,14 @@ static void __fastcall _remove_dup ( TCollection_AsciiString& str ) {
 
 static Standard_Integer RemoveExtraSeparator(TCollection_AsciiString& aString) {
 
-  Standard_Integer i, j, len ;
+  Standard_Integer i, j, len,start = 1 ;
 
   len = aString.Length() ;
-  for (i = j = 1 ; j <= len ; i++,j++) {
+#ifdef _WIN32
+  if (len > 1 && aString.Value(1) == '/' && aString.Value(2) == '/')
+    start = 2;
+#endif  
+  for (i = j = start ; j <= len ; i++,j++) {
       Standard_Character c = aString.Value(j) ;
       aString.SetValue(i,c) ;
       if (c == '/')