From e531cffcd1c0869a988f29894289d1faff99d5b9 Mon Sep 17 00:00:00 2001 From: Carl Gay Date: Sat, 24 Jun 2023 04:55:23 +0000 Subject: [PATCH] system: On Windows, run-application only accepts a string Fixes #1504 --- .../library-reference/source/system/operating-system.rst | 3 +++ sources/system/x86-win32-operating-system.dylan | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/documentation/library-reference/source/system/operating-system.rst b/documentation/library-reference/source/system/operating-system.rst index e7cc5326b6..5035b89d8a 100644 --- a/documentation/library-reference/source/system/operating-system.rst +++ b/documentation/library-reference/source/system/operating-system.rst @@ -413,6 +413,9 @@ System library's operating-system module. command as parsed by the shell. Example: ``"/bin/ls -l"`` or ``#["/bin/ls", "-l"]`` + .. note:: On Windows this must be a :drm:``, not a sequence of + strings. + :parameter #key under-shell?: An instance of :drm:``. If true (the default), use a shell to invoke the *command*. On Unix systems this is equivalent to ``/bin/sh -c '...command...'``. On Windows the diff --git a/sources/system/x86-win32-operating-system.dylan b/sources/system/x86-win32-operating-system.dylan index e8c28fc678..95affdf9bf 100644 --- a/sources/system/x86-win32-operating-system.dylan +++ b/sources/system/x86-win32-operating-system.dylan @@ -614,7 +614,7 @@ define constant $null-device = "NUL:"; // Note: streams are always returned in the order stdin, stdout, stderr // even though not all of them are always returned. define function run-application - (command :: type-union(, limited(, of: )), + (command :: , #key under-shell? = #f, inherit-console? = #t, activate? = #t,