nix/tests/functional
Felix Uhl f282ef5a56 fix: segfault in positional arg completion
Adding the inputPath as a positional feature uncovered this bug.
As positional argument forms were discarded from the `expectedArgs`
list, their closures were not. When the `.completer` closure was then
called, part of the surrounding object did not exist anymore.

This didn't cause an issue before, but with the new call to
`getEvalState()` in the "inputs" completer in nix/flake.cc, a segfault
was triggered reproducibly on invalid memory access to the `this`
pointer, which was always 0.

The solution of splicing the argument forms into a new list to extend
their lifetime is a bit of a hack, but I was unable to get the "nicer"
iterator-based solution to work.
2023-10-31 15:33:57 +01:00
..
ca Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
common Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
config Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dyn-drv Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
flakes Overhaul nix flake update and lock commands 2023-10-31 15:33:57 +01:00
lang Add builtins.addDrvOutputDependencies 2023-10-23 12:49:14 -04:00
nested-sandboxing Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
plugins Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
test-libstoreconsumer Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
add.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
bad.tar.xz Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
bash-profile.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
big-derivation-attr.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
binary-cache-build-remote.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
binary-cache.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
brotli.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-delete.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-dry.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-hook-ca-fixed.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-hook-ca-floating.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-hook.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-content-addressed-fixed.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-content-addressed-floating.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-input-addressed.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless-after.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless-should-fail-0.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless-should-pass-0.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless-should-pass-1.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless-should-pass-2.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless-should-pass-3.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-trustless.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
ca-shell.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
case-hack.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
case.nar Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check-refs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check-refs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check-reqs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check-reqs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
common.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
completions.sh fix: segfault in positional arg completion 2023-10-31 15:33:57 +01:00
compression-levels.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
compute-levels.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
config.nix.in Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
config.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
db-migration.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dependencies.builder0.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dependencies.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dependencies.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
derivation-json.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dummy Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dump-db.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
eval-store.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
eval.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
eval.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
experimental-features.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
export-graph.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
export-graph.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
export.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
failing.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchClosure.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchGit.sh fetchTree cleanup 2023-10-13 14:34:23 +02:00
fetchGitRefs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchGitSubmodules.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchMercurial.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchPath.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchTree-file.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchurl.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
filter-source.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
filter-source.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fixed.builder1.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fixed.builder2.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fixed.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fixed.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fmt.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fmt.simple.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
function-trace.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-auto.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-concurrent2.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-concurrent.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-concurrent.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-concurrent.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-non-blocking.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-runtime.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-runtime.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
hash-check.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
hash.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
hermetic.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
import-derivation.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
import-derivation.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
impure-derivations.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
impure-derivations.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
impure-env.nix Allow CLI to pass environment variables to FOD builder (#8830) 2023-10-11 11:58:42 +00:00
impure-env.sh Allow CLI to pass environment variables to FOD builder (#8830) 2023-10-11 11:58:42 +00:00
init.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
install-darwin.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
lang-test-infra.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
lang.sh Fix language tests a bit 2023-10-16 12:52:59 -04:00
legacy-ssh-store.sh updated store ping to store info in files 2023-10-18 00:14:11 +05:30
linux-sandbox-cert-test.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
linux-sandbox.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
local-store.sh updated store ping to store info in files 2023-10-18 00:14:11 +05:30
local.mk store info sh renamed 2023-10-18 00:12:10 +05:30
logging.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
misc.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
multiple-outputs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
multiple-outputs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nar-access.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nar-access.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nested-sandboxing.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix_path.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-build-examples.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-build.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-channel.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-collect-garbage-d.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-copy-ssh-ng.sh updated store ping to store info in files 2023-10-18 00:14:11 +05:30
nix-copy-ssh.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-daemon-untrusting.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-profile.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-shell.sh tests: test nix-shell shebang quoting 2023-10-23 17:32:50 +02:00
optimise-store.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
output-normalization.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
parallel.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
parallel.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
parallel.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
pass-as-file.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
path-from-hash-part.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
path.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
placeholders.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
plugins.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
post-hook.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
pure-eval.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
pure-eval.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
push-to-store-old.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
push-to-store.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
read-only-store.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
readfile-context.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
readfile-context.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
recursive.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
recursive.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
referrers.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
remote-store.sh updated store ping to store info in files 2023-10-18 00:14:11 +05:30
repair.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
repl.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
restricted.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
restricted.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
search.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
search.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
secure-drv-outputs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
secure-drv-outputs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
selfref-gc.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
shell-hello.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
shell.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
shell.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
shell.shebang.nix tests: test nix-shell shebang quoting 2023-10-23 17:32:50 +02:00
shell.shebang.rb Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
shell.shebang.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
signing.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
simple-failing.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
simple.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
simple.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
simple.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
ssh-relay.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
store-info.sh Store info command help updates 2023-10-17 09:39:59 +05:30
structured-attrs-shell.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
structured-attrs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
structured-attrs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
substitute-with-invalid-ca.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
suggestions.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
supplementary-groups.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
tarball.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
test-infra.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
test-libstoreconsumer.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
timeout.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
timeout.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
toString-path.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
undefined-variable.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
user-envs-migration.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
user-envs.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
user-envs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
user-envs.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
why-depends.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
zstd.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00