Merge pull request #2264 from Skgland/fix-os-argv-1
Fix os:argv/1 in case the raw args contain multiple `--`
This commit is contained in:
@@ -138,7 +138,8 @@ raw_argv(Argv) :-
|
||||
argv(Argv) :-
|
||||
can_be(list, Argv),
|
||||
'$argv'(Argv0),
|
||||
( append(_, ["--"|Argv], Argv0) ->
|
||||
true
|
||||
; Argv = []
|
||||
( append(_, ["--"|Argv1], Argv0) ->
|
||||
Argv = Argv1
|
||||
;
|
||||
Argv = []
|
||||
).
|
||||
|
||||
0
tests/scryer/cli/issues/os_argv-no-final--.stderr
Normal file
0
tests/scryer/cli/issues/os_argv-no-final--.stderr
Normal file
6
tests/scryer/cli/issues/os_argv-no-final--.stdin
Normal file
6
tests/scryer/cli/issues/os_argv-no-final--.stdin
Normal file
@@ -0,0 +1,6 @@
|
||||
os:argv(V).
|
||||
os:argv(["test1"|_]).
|
||||
os:argv(["--"|_]).
|
||||
os:argv([V, "--"|_]).
|
||||
os:argv(["test2"|_]).
|
||||
os:argv([]).
|
||||
6
tests/scryer/cli/issues/os_argv-no-final--.stdout
Normal file
6
tests/scryer/cli/issues/os_argv-no-final--.stdout
Normal file
@@ -0,0 +1,6 @@
|
||||
V = ["test1","--","test2"].
|
||||
true.
|
||||
false.
|
||||
V = "test1".
|
||||
false.
|
||||
false.
|
||||
2
tests/scryer/cli/issues/os_argv-no-final--.toml
Normal file
2
tests/scryer/cli/issues/os_argv-no-final--.toml
Normal file
@@ -0,0 +1,2 @@
|
||||
# https://github.com/mthom/scryer-prolog/pull/2263#issuecomment-1874400820
|
||||
args = ["-f", "--no-add-history", "--", "test1", "--", "test2"]
|
||||
0
tests/scryer/cli/issues/os_argv.stderr
Normal file
0
tests/scryer/cli/issues/os_argv.stderr
Normal file
6
tests/scryer/cli/issues/os_argv.stdin
Normal file
6
tests/scryer/cli/issues/os_argv.stdin
Normal file
@@ -0,0 +1,6 @@
|
||||
os:argv(V).
|
||||
os:argv(["test1"|_]).
|
||||
os:argv(["--"|_]).
|
||||
os:argv([V, "--"|_]).
|
||||
os:argv(["test2"|_]).
|
||||
os:argv([]).
|
||||
6
tests/scryer/cli/issues/os_argv.stdout
Normal file
6
tests/scryer/cli/issues/os_argv.stdout
Normal file
@@ -0,0 +1,6 @@
|
||||
V = ["test1","--","test2","--"].
|
||||
true.
|
||||
false.
|
||||
V = "test1".
|
||||
false.
|
||||
false.
|
||||
2
tests/scryer/cli/issues/os_argv.toml
Normal file
2
tests/scryer/cli/issues/os_argv.toml
Normal file
@@ -0,0 +1,2 @@
|
||||
# https://github.com/mthom/scryer-prolog/pull/2263#issuecomment-1874400820
|
||||
args = ["-f", "--no-add-history", "--", "test1", "--", "test2", "--"]
|
||||
Reference in New Issue
Block a user