Changeset 12967


Ignore:
Timestamp:
Oct 9, 2009, 8:14:45 PM (10 years ago)
Author:
gz
Message:

windows (r12825)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711/ccl/level-1/linux-files.lisp

    r12960 r12967  
    16581658    (reduce (lambda (left right) (concatenate 'string left " " right)) strings))
    16591659
    1660   (defun exec-with-io-redirection (new-in new-out new-err args proc &optional env)
     1660  (defun create-windows-process (new-in new-out new-err cmdstring env)
    16611661    (declare (ignore env))              ; until we can do better.
    1662     (with-filename-cstrs ((command (join-strings args)))
     1662    (with-filename-cstrs ((command cmdstring))
    16631663      (rletz ((proc-info #>PROCESS_INFORMATION)
    16641664              (si #>STARTUPINFO))
     
    16891689                                     si
    16901690                                     proc-info))
    1691           (progn
    1692             (setf (external-process-%status proc) :error
    1693                   (external-process-%exit-code proc) (#_GetLastError))
    1694             (signal-semaphore (external-process-signal proc))
    1695             (signal-semaphore (external-process-completed proc))
    1696             nil)
     1691          (values nil (#_GetLastError))
    16971692          (progn
    16981693            (#_CloseHandle (pref proc-info #>PROCESS_INFORMATION.hThread))
    1699             (pref proc-info #>PROCESS_INFORMATION.hProcess))))))
     1694            (values t (pref proc-info #>PROCESS_INFORMATION.hProcess)))))))
     1695
     1696  (defun exec-with-io-redirection (new-in new-out new-err args proc &optional env)
     1697    (multiple-value-bind (win handle-to-process-or-error)
     1698        (create-windows-process new-in new-out new-err (join-strings args) env)
     1699      (if win
     1700        handle-to-process-or-error
     1701        (progn
     1702          (setf (external-process-%status proc) :error
     1703                (external-process-%exit-code proc) handle-to-process-or-error)
     1704          (signal-semaphore (external-process-signal proc))
     1705          (signal-semaphore (external-process-completed proc))
     1706          nil))))
    17001707
    17011708  (defun fd-uninheritable (fd &key direction)
     
    17971804
    17981805
    1799 )
     1806  )
    18001807                                        ;#+windows-target (progn
    18011808
Note: See TracChangeset for help on using the changeset viewer.