changed command-execution to parse the command-line as sexps and not calling sh

This commit is contained in:
frese 2003-12-09 18:57:12 +00:00
parent 609cb1b61f
commit 4b715095ca
2 changed files with 5 additions and 4 deletions

View File

@ -196,7 +196,7 @@
;; *** main package ************************************************** ;; *** main package **************************************************
(define-structure scsh-things (define-structure scsh-things
(export ((run &) :syntax)) (export ((run &) :syntax) port->sexp-list)
(open scsh)) (open scsh))
(define-structure config (define-structure config
@ -215,7 +215,7 @@
get-manager-by-window get-manager-by-window
create-new-manager create-new-manager
root-wm-manage-window) root-wm-manage-window)
(open scheme list-lib scsh-things signals (open scheme list-lib scsh-things signals extended-ports
define-record-types threads define-record-types threads
xlib xlib
rendezvous rendezvous-channels rendezvous rendezvous-channels

View File

@ -319,8 +319,9 @@
#f (finite-complete (executables-in-path))))) #f (finite-complete (executables-in-path)))))
(and exec (and exec
(not (string=? exec "")) (not (string=? exec ""))
;; execute via sh -c to allow specifying arguments for the program (let* ((p (make-string-input-port exec))
(& (sh -c ,exec))))) (parts (port->sexp-list p)))
(& ,parts)))))
((attach) ((attach)
(let* ((cm (root-wm:current-manager root-wm)) (let* ((cm (root-wm:current-manager root-wm))
(windows-above (window-path (wm:dpy cm) (wm:window cm))) (windows-above (window-path (wm:dpy cm) (wm:window cm)))