1 parent
c077b95ba2
commit
95625c3fdb
2 files changed
+25
-2
No files matched your search
+12
-2
@@ -317,7 +317,12 @@ int main(int argc, char* argv[]) {
|
|||||||
if (further_args_are_strings) {
|
if (further_args_are_strings) {
|
||||||
ARGS = jv_array_append(ARGS, jv_string(argv[i]));
|
ARGS = jv_array_append(ARGS, jv_string(argv[i]));
|
||||||
} else if (further_args_are_json) {
|
} else if (further_args_are_json) {
|
||||||
ARGS = jv_array_append(ARGS, jv_parse(argv[i]));
|
jv v = jv_parse(argv[i]);
|
||||||
|
if (!jv_is_valid(v)) {
|
||||||
|
fprintf(stderr, "%s: invalid JSON text passed to --jsonargs\n", progname);
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
ARGS = jv_array_append(ARGS, v);
|
||||||
} else {
|
} else {
|
||||||
jq_util_input_add_input(input_state, argv[i]);
|
jq_util_input_add_input(input_state, argv[i]);
|
||||||
nfiles++;
|
nfiles++;
|
||||||
@@ -330,7 +335,12 @@ int main(int argc, char* argv[]) {
|
|||||||
if (further_args_are_strings) {
|
if (further_args_are_strings) {
|
||||||
ARGS = jv_array_append(ARGS, jv_string(argv[i]));
|
ARGS = jv_array_append(ARGS, jv_string(argv[i]));
|
||||||
} else if (further_args_are_json) {
|
} else if (further_args_are_json) {
|
||||||
ARGS = jv_array_append(ARGS, jv_parse(argv[i]));
|
jv v = jv_parse(argv[i]);
|
||||||
|
if (!jv_is_valid(v)) {
|
||||||
|
fprintf(stderr, "%s: invalid JSON text passed to --jsonargs\n", progname);
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
ARGS = jv_array_append(ARGS, v);
|
||||||
} else {
|
} else {
|
||||||
jq_util_input_add_input(input_state, argv[i]);
|
jq_util_input_add_input(input_state, argv[i]);
|
||||||
nfiles++;
|
nfiles++;
|
||||||
|
|||||||
@@ -207,6 +207,19 @@ fi
|
|||||||
echo '{"a":1,"b",' | $JQ --stream > /dev/null 2> $d/err
|
echo '{"a":1,"b",' | $JQ --stream > /dev/null 2> $d/err
|
||||||
grep 'Objects must consist of key:value pairs' $d/err > /dev/null
|
grep 'Objects must consist of key:value pairs' $d/err > /dev/null
|
||||||
|
|
||||||
|
## Regression test for issue #2572 assert when using --jsonargs and invalid JSON
|
||||||
|
$JQ -n --jsonargs null invalid && EC=$? || EC=$?
|
||||||
|
if [ "$EC" -ne 2 ]; then
|
||||||
|
echo "--jsonargs exited with wrong exit code, expected 2 got $EC" 1>&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# this tests the args_done code path "--"
|
||||||
|
$JQ -n --jsonargs null -- invalid && EC=$? || EC=$?
|
||||||
|
if [ "$EC" -ne 2 ]; then
|
||||||
|
echo "--jsonargs exited with wrong exit code, expected 2 got $EC" 1>&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
## Fuzz parser
|
## Fuzz parser
|
||||||
|
|
||||||
## XXX With a $(urandom) builtin we could move this test into tests/all.test
|
## XXX With a $(urandom) builtin we could move this test into tests/all.test
|
||||||
|
|||||||
Reference in new issue
Block a user