0028673: getsourcefile Draw command return different output on Linux and Windows...
authormsv <msv@opencascade.com>
Fri, 21 Apr 2017 14:18:14 +0000 (17:18 +0300)
committerbugmaster <bugmaster@opencascade.com>
Fri, 5 May 2017 08:27:43 +0000 (11:27 +0300)
The method Draw_Interpretor::add() has been corrected so that the command getsourcefile returned the relative path starting with "src" without leading "/" on all platforms.

src/Draw/Draw_Interpretor.cxx
tests/demo/draw/getsource

index d84973e..025df31 100644 (file)
@@ -311,6 +311,8 @@ void Draw_Interpretor::add (const Standard_CString          theCommandName,
   aPath.SetNode ("");
   TCollection_AsciiString aSrcPath;
   aPath.SystemName (aSrcPath);
+  if (aSrcPath.Value(1) == '/')
+    aSrcPath.Remove(1);
   Tcl_SetVar2 (myInterp, "Draw_Files", aName, aSrcPath.ToCString(), TCL_GLOBAL_ONLY);
 }
 
index 4222254..acfe3bb 100755 (executable)
@@ -1,13 +1,7 @@
-puts "TODO OCC28773 Windows: Error: command 'getsourcefile pload' returned"
-
 # test for command getsource
 
 # check that path returned for command pload is as expected
-if { [checkplatform -windows] } {
-    set expected src/Draw/Draw_PloadCommands.cxx
-} else {
-    set expected /src/Draw/Draw_PloadCommands.cxx
-}
+set expected src/Draw/Draw_PloadCommands.cxx
 set path [lindex [getsourcefile pload] 1]
 if { [string compare $path $expected] } {
     puts "Error: command 'getsourcefile pload' returned '$path' while expected '$expected'"