From 15fa1dec99f2a709dd6c3ee9791af4a9f72b4a83 Mon Sep 17 00:00:00 2001 From: itchyny Date: Wed, 13 May 2020 12:09:53 +0900 Subject: Fix error handling in strftime --- src/builtin.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/builtin.c b/src/builtin.c index 25af2864..8533d7e6 100644 --- a/src/builtin.c +++ b/src/builtin.c @@ -1532,6 +1532,10 @@ static jv f_localtime(jq_state *jq, jv a) { static jv f_strftime(jq_state *jq, jv a, jv b) { if (jv_get_kind(a) == JV_KIND_NUMBER) { a = f_gmtime(jq, a); + if (!jv_is_valid(a)) { + jv_free(b); + return a; + } } else if (jv_get_kind(a) != JV_KIND_ARRAY) { return ret_error2(a, b, jv_string("strftime/1 requires parsed datetime inputs")); } else if (jv_get_kind(b) != JV_KIND_STRING) { -- cgit v1.2.3