Commit graph

6893 commits

Author SHA1 Message Date
Daniel Kochmański
bcacc6bdb0 si_wait: move to external, its called from the outside 2017-02-19 11:12:22 +01:00
Daniel Kochmański
91c45d09cd dpp: always set zero-th variable with values 2017-02-19 11:10:30 +01:00
Daniel Kochmański
ef65a8b1ac external-process-wait: accessor is *-%code 2017-02-19 08:29:16 +01:00
Daniel Kochmański
11d5773d26 ecl-waitpid wrapper: si_waitpid takes objects 2017-02-19 08:28:01 +01:00
Daniel Kochmański
333c23ad4c external-process: move external-process-wait outside the core 2017-02-19 07:59:41 +01:00
Daniel Kochmański
b4affb9302 ecl_waitpid: promote to internal global function si_waitpid 2017-02-19 07:45:25 +01:00
Daniel Kochmański
22ebecd7d0 run-program-inner: argv is (command . argv) 2017-02-18 20:45:43 +01:00
Daniel Kochmański
ce111619cf run-program: provide simple interface run-program-inner
Both run-program and run-program-inner work on same interface
si:spawn-subprocess.
2017-02-18 20:31:03 +01:00
Daniel Kochmański
127af0e59a prepare-args: revert, its create process responsibility 2017-02-18 20:27:46 +01:00
Daniel Kochmański
6ff556b707 core: bring bad old system function (3) 2017-02-18 20:25:51 +01:00
Daniel Kochmański
a402eaca70 core: bring bad old system function (2) 2017-02-18 20:25:32 +01:00
Daniel Kochmański
4aaadf0545 core: bring bad old system function 2017-02-18 20:25:17 +01:00
Daniel Kochmański
1e62ca0a1a prepare-args: last argument is NIL for POSIX
On POSIX arguments starts with command name and end with NULL. Ensure,
that last argument is NULL to avoid "Bad address".
2017-02-18 20:23:15 +01:00
Daniel Kochmański
0144154b9d prepare-args: coerce arguments for windows 2017-02-18 19:14:34 +01:00
Daniel Kochmański
f7e224b84e external-process: remove interface ties from the core
We are stopping to handle sigchld for time being because it was too
tightly coupled with core.

Internal interface wait-for-all-processes is removed as well as eager
update of process state.
2017-02-18 15:04:10 +01:00
Daniel Kochmański
a810a4f73d ext:system: don't escape arguments 2017-02-18 07:53:55 +01:00
Daniel Kochmański
204062999f Merge branch 'refactor-run-program' into develop
Refactor run-program to have HL interface in lisp sources. Add proper
argument escaping on Windows (fixes #304).

TODO:
- write tests for run-program
- documentation
- move external-process logic to process.lsp
- implement external-process-pipe-thread
2017-02-17 19:26:22 +01:00
Daniel Kochmański
039f49a02e run-program: windows: sanitize args 2017-02-17 19:04:45 +01:00
Daniel Kochmański
d07fbcb9fd run-program: windows: args 2017-02-17 19:03:08 +01:00
Daniel Kochmański
a26791e9fb run-program: on windows argv is a string (no car) 2017-02-17 18:59:39 +01:00
Daniel Kochmański
ca08f94430 cosmetic 2017-02-17 18:45:04 +01:00
Daniel Kochmański
9e69603e4f run-program: fix misconception 2017-02-17 18:43:19 +01:00
Daniel Kochmański
2b2ef967ef run-program: don't modify command 2017-02-17 18:31:36 +01:00
Daniel Kochmański
10242910f9 Merge branch 'develop' into refactor-run-program 2017-02-17 18:30:32 +01:00
Daniel Kochmański
ee10aa7313 run-program: error stream direction is output 2017-02-17 17:58:13 +01:00
Daniel Kochmański
1360bc1306 cosmetic: add comment 2017-02-17 17:25:12 +01:00
Daniel Kochmański
212a60e9bc run-program: if gray-stream passed, propose continuation
If execution is continued, new stream is created.
2017-02-17 17:24:19 +01:00
Daniel Kochmański
76e503ed7a run-program: if gray-stream passed, propose continuation
If execution is continued, new stream is created.
2017-02-17 17:22:26 +01:00
Daniel Kochmański
2fb64f6d82 run-program: process passed arguments properly 2017-02-17 16:49:32 +01:00
Daniel Kochmański
d8c4da22fc run-program: use previously prepared arguments 2017-02-17 16:24:48 +01:00
Daniel Kochmański
9a166af99c run-program: typos / ommisions 2017-02-17 16:05:16 +01:00
Daniel Kochmański
86faf44d2a run-program: initial separation (logic / low-level interface) 2017-02-17 15:21:31 +01:00
Daniel Kochmański
6fe66843de cosmetic: be explicit about comments 2017-02-17 14:19:51 +01:00
Daniel Kochmański
d9a715d7da cleanup: remove dead code (2) 2017-02-17 14:18:45 +01:00
Daniel Kochmański
dfa4d36384 cleanup: remove dead code 2017-02-17 14:18:27 +01:00
Daniel Kochmański
e3b8c3a668 msvc: improve clean targets
Contributed on GitLab by @Exaybachay.
2017-02-17 09:01:06 +01:00
Daniel Kochmański
9e4370bd88 encodings: ommited file 2017-02-17 08:57:58 +01:00
Daniel Kochmański
37083b5836 encodings: typo and more exact proclamation
by mistake make-encoding was bound to load-encoding. Also we have
proclaimed, that make-encoding always returns hash-table.
2017-02-17 08:57:05 +01:00
Daniel Kochmański
091d53626b encoding: typo 2017-02-16 21:31:51 +01:00
Daniel Kochmański
1b90599696 encodings: get rid of spurious function
We don't need explicit si_make_encoding.
2017-02-16 21:29:42 +01:00
Daniel Kochmański
0b66672d7f changelog: update 2017-02-16 20:48:05 +01:00
Daniel Kochmański
bdc75e42da encodings: don't fake ext:make-encoding in dispatch table
si_make_encoding was bound to ext:make-encoding before version in
iolib.lsp was overwriting it. That caused maybe_fix_console to fail on
Windows due to infinite concurrency (si_make_encoding called itself,
because iolib.lsp wasn't called yet).

Fixes #160.
2017-02-16 20:44:07 +01:00
Daniel Kochmański
1c8284c17c Merge branch 'develop' into 'develop'
Add ABORT keyword argument to SB-BSD-SOCKETS:SOCKET-CLOSE

See merge request !52
2017-02-12 09:48:04 +00:00
Kris Katterjohn
de661f580a Add ABORT keyword argument to SB-BSD-SOCKETS:SOCKET-CLOSE
This keyword argument was added in SBCL in 2010 and is used to pass
ABORT to CL:CLOSE.

The absence of this would obviously cause errors when code expects
this to be available.  For example, this happens in usocket's
SOCKET-CONNECT and would cause several errors in their test suite
with obscure error messages like

  Wrong number of arguments passed to function #<compiled-function 0000000003562e80>.

This is untested on Windows.
2017-02-11 19:18:50 -06:00
Daniel Kochmański
acfde74880 Merge branch 'patch-1' into 'develop'
In `flisten` check that the stream is not in an error state, as well as not eof

See merge request !51
2017-02-09 22:07:05 +00:00
Erik Bray
47b1e98272 In flisten check that the stream is not in an error state, as well as not eof
(The latter doesn't necessarily imply the former)
2017-02-09 18:41:40 +01:00
Daniel Kochmański
1f00d11a40 Merge branch 'develop' into 'develop'
Fix/improve some error messages

See merge request !50
2017-02-08 21:51:01 +00:00
Kris Katterjohn
2c651a9ecd Improve some error messages for functions of exactly one variable
This changes
  "the value of the first argument"
to
  "the value of the only argument"
in some type-error error messages for functions accepting exactly
one argument.
2017-02-07 16:19:17 -06:00
Kris Katterjohn
98969d14ff Fix some more error messages mentioning the wrong function names
array-rank  - mentioned array-dimension instead
denominator - mentioned numerator instead
set         - mentioned setq instead
2017-02-07 16:17:26 -06:00
Daniel Kochmański
310b51b677 Merge branch 'develop' into 'develop'
fix off-by-one range checks for tcp ports; check for additional ctags names; fix error message

See merge request !49
2017-02-05 19:48:31 +00:00