From 58431879b19a1b1cd5ff3a6575be07c46c73db39 Mon Sep 17 00:00:00 2001 From: "Andrew J. Schorr" Date: Mon, 27 Sep 2021 10:26:15 -0400 Subject: Patch ord function to avoid returning negative values. --- extension/ChangeLog | 5 +++++ extension/ordchr.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) (limited to 'extension') diff --git a/extension/ChangeLog b/extension/ChangeLog index f4e6ea41..d795260b 100644 --- a/extension/ChangeLog +++ b/extension/ChangeLog @@ -1,3 +1,8 @@ +2021-09-27 Andrew J. Schorr + + * ordchr.c (do_ord): Need to cast to unsigned char to avoid returning + negative values. + 2021-09-22 Arnold D. Robbins * configure.ac: Update version to 5.1.1 in preparation for release. diff --git a/extension/ordchr.c b/extension/ordchr.c index e1afade5..d367988b 100644 --- a/extension/ordchr.c +++ b/extension/ordchr.c @@ -67,7 +67,7 @@ do_ord(int nargs, awk_value_t *result, struct awk_ext_func *unused) assert(result != NULL); if (get_argument(0, AWK_STRING, & str)) { - ret = str.str_value.str[0]; + ret = (unsigned char)str.str_value.str[0]; } else if (do_lint) lintwarn(ext_id, _("ord: first argument is not a string")); -- cgit v1.2.3 From b119426eb9db950752533dd410710a6389ee633a Mon Sep 17 00:00:00 2001 From: "Andrew J. Schorr" Date: Mon, 27 Sep 2021 10:29:35 -0400 Subject: Fix white space in ord function patch. --- extension/ChangeLog | 4 ++++ extension/ordchr.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'extension') diff --git a/extension/ChangeLog b/extension/ChangeLog index d795260b..094f6824 100644 --- a/extension/ChangeLog +++ b/extension/ChangeLog @@ -1,3 +1,7 @@ +2021-09-27 Andrew J. Schorr + + * ordchr.c (do_ord): Add white space around cast. + 2021-09-27 Andrew J. Schorr * ordchr.c (do_ord): Need to cast to unsigned char to avoid returning diff --git a/extension/ordchr.c b/extension/ordchr.c index d367988b..ff990b6b 100644 --- a/extension/ordchr.c +++ b/extension/ordchr.c @@ -67,7 +67,7 @@ do_ord(int nargs, awk_value_t *result, struct awk_ext_func *unused) assert(result != NULL); if (get_argument(0, AWK_STRING, & str)) { - ret = (unsigned char)str.str_value.str[0]; + ret = (unsigned char) str.str_value.str[0]; } else if (do_lint) lintwarn(ext_id, _("ord: first argument is not a string")); -- cgit v1.2.3