From 97602456e32487d5fe5f7ecff3a0fddee8882d87 Mon Sep 17 00:00:00 2001 From: Nicolas Williams Date: Tue, 13 Jan 2015 18:57:35 -0600 Subject: join/1: respect empty strings (fix #668) --- builtin.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'builtin.c') diff --git a/builtin.c b/builtin.c index 3a7a89c7..a9c64d8e 100644 --- a/builtin.c +++ b/builtin.c @@ -1065,7 +1065,7 @@ static const char* const jq_builtins[] = { "def scalars: select(. == null or . == true or . == false or type == \"number\" or type == \"string\");", "def scalars_or_empty: select(. == null or . == true or . == false or type == \"number\" or type == \"string\" or ((type==\"array\" or type==\"object\") and length==0));", "def leaf_paths: paths(scalars);", - "def join($x): reduce .[] as $i (\"\"; . + (if . == \"\" then $i else $x + $i end));", + "def join($x): reduce .[] as $i (null; (.//\"\") + (if . == null then $i else $x + $i end));", "def flatten: reduce .[] as $i ([]; if $i | type == \"array\" then . + ($i | flatten) else . + [$i] end);", "def flatten($x): reduce .[] as $i ([]; if $i | type == \"array\" and $x > 0 then . + ($i | flatten($x-1)) else . + [$i] end);", "def range($x): range(0;$x);", -- cgit v1.2.3