[gambit-list] shell-command failing in Gambit 4.6.2 (MinGW build)

REPLeffect repleffect at gmail.com
Tue Jan 17 03:01:21 EST 2012


  The shell-command procedure under the MinGW build of Gambit 4.6.2
seems to be broken.
When running gsi under the MinGW MSys shell (by running gsi.exe -:d-),
things worked
fine under Gambit 4.6.0 (as shown below).  However, in Gambit 4.6.2,
it appears that
only the program name passed in the shell command is being recognized.
 Thus, I could
run (shell-command "ls 1 2 3") while in a directory where no such
files existed, and I
got the contents of the directory (as if the command had only been
"ls", with no arguments).

==== Output running under Msys: (gsi.exe -:d-) ==========

  Gambit v4.6.0

  > (shell-command "ls 1 2 3")
  ls: 1: No such file or directory
  ls: 2: No such file or directory
  ls: 3: No such file or directory
  512
  >


  Gambit v4.6.2

  > (shell-command "ls 1 2 3")
  INSTALL.txt
  LGPL.txt
  LICENSE-2.0.txt
  README
  bin
  config.guess
  config.log
  config.status
  config.sub
  configure
  configure.ac
  doc
  examples
  gsc
  gsc-comp.exe
  gsi
  include
  install-sh
  lib
  makefile
  makefile.in
  misc
  mkidirs
  prebuilt
  relpath
  tests
  0
  >




The results get even worse when running Gambit 4.6.2 directly from the Windows
start menu.  Here again, version 4.6.0 does what I expected.  However,
when I run
version 4.6.2, I can't get the shell-command to work no matter what
command I pass it:



====== Output running gsi.exe directly from the Windows Start Menu: ======


  Gambit v4.6.0

  > (shell-command "dir 1 2 3")
   Volume in drive C has no label.
   Volume Serial Number is 14C2-1C72

   Directory of C:\test\Gambit-C\v4_6_0\v4.6.0\bin


   Directory of C:\test\Gambit-C\v4_6_0\v4.6.0\bin


   Directory of C:\test\Gambit-C\v4_6_0\v4.6.0\bin

  File Not Found
  256
  >



  Gambit v4.6.2

  > (shell-command "dir 1 2 3")
  *** ERROR IN (console)@1.1 -- No such file or directory
  (open-process
   '(path: "sh" arguments: ("-c" "dir 1 2 3") stdin-redirection: #f
stdout-red...
  )
  1>

  > (shell-command "dir")
  *** ERROR IN (console)@5.1 -- No such file or directory
  (open-process
   '(path: "sh" arguments: ("-c" "dir") stdin-redirection: #f
stdout-redirecti...
  )
  1>


--------------------------------------------------------------

All of these tests were run against the current prebuilt versions of
Gambit 4.6.0 and 4.6.2 downloaded from Gambit's web site.

I'll be happy to test any patches or other changes needed to fix this problem.



More information about the Gambit-list mailing list