[Openmcl-devel] problem using ccl::run-program

Gary Byers gb at clozure.com
Sun Oct 19 06:50:52 PDT 2008


I suspect that this is the same bug described in
<http://trac.clozure.com/openmcl/ticket/318>

On Sun, 19 Oct 2008, R.Stoye wrote:

> run-program fails to capture the output depending on the given
> arguments to :output and :error
> It works for pathnames or :stream, it fails for streams (file-stream
> or string-output-stream).
> Looking at the code of run-program and get-descriptor-for doesn't
> reveal any obvious bug to me and i see that streams should be handled.
> To simplify testing, i used the appended c-code for "simpleout".
>
> ;; OK:
> (ccl:run-program "/usr/local/bin/simpleout" '() :output "/tmp/
> simpleout_output.txt" :error "/tmp/simpleout_error.txt")
> (ccl:run-program "/usr/local/bin/simpleout"
> '() :output :stream :error :stream) ...
>
>
> ;; Missing Output (err is ok):
> (with-open-file (out "/tmp/testout.txt" :direction :output :if-
> exists :supersede :if-does-not-exist :create :sharing :lock)
>   (with-open-file (err "/tmp/testerr.txt" :direction :output :if-
> exists :supersede :if-does-not-exist :create :sharing :lock)
>     (ccl::run-program "/home/rs/ctests/simpleout" (list) :output
> out :error err)))
>
> ;; Missing Output: (err is ok)
> (let (the-output the-error)
>   (with-output-to-string (out)
>     (with-output-to-string (err)
>       (ccl::run-program "/Users/Shared/WORK/xcodes/Release/
> simpleout" (list) :output out :error err)
>       (setf the-output (get-output-stream-string out)
> 	    the-error (get-output-stream-string err))))
>   (list the-output the-error))
>
> --------------------------------------------------- c code
> -----------------------------------------------------
> /*  simpleout - write something to stdout and stderr */
> #include <stdio.h>
>
> int main (int argc, const char * argv[]) {
>     printf("Output Hello, World!\n");
>     fprintf(stderr, "Error Hello, World\n");
>     return 0;
> }
> --------------------------------------------------- c code
> -----------------------------------------------------
>
> ccl versions tested:
>    "Version 1.2-r9739MS-RC1  (DarwinX8664)",
>    "Version 1.2-r9733MS-RC1  (LinuxX8664)" and
>    "Version 1.2-r10988M-trunk  (DarwinX8664)"
>
>
> Greetings
> Ralf Stoye
>
>
> _______________________________________________
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
> http://clozure.com/mailman/listinfo/openmcl-devel
>
>



More information about the Openmcl-devel mailing list