From 13cc84e4a927e2d3b037c8fc966d6192efff736f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fredrik=20H=C3=BCbinette=20=28Hubbe=29?= <hubbe@hubbe.net>
Date: Fri, 1 Nov 1996 16:18:12 -0800
Subject: [PATCH] f_lower_case and f_upper_case fixed

Rev: src/builtin_functions.c:1.8
---
 src/builtin_functions.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/builtin_functions.c b/src/builtin_functions.c
index 16bffa63f0..0ab620cb11 100644
--- a/src/builtin_functions.c
+++ b/src/builtin_functions.c
@@ -133,8 +133,8 @@ void f_lower_case(INT32 args)
   MEMCPY(ret->str, sp[-args].u.string->str,sp[-args].u.string->len);
 
   for (i = sp[-args].u.string->len-1; i>=0; i--)
-    if (isupper(ret->str[i]))
-      ret->str[i] = tolower(ret->str[i]);
+    if (isupper(EXTRACT_UCHAR( ret->str + i)))
+      ret->str[i] = tolower(EXTRACT_UCHAR(ret->str+i));
 
   pop_n_elems(args);
   push_string(end_shared_string(ret));
@@ -153,8 +153,8 @@ void f_upper_case(INT32 args)
   MEMCPY(ret->str, sp[-args].u.string->str,sp[-args].u.string->len);
 
   for (i = sp[-args].u.string->len-1; i>=0; i--)
-    if (islower(ret->str[i]))
-      ret->str[i] = toupper(ret->str[i]);
+    if (islower(EXTRACT_UCHAR(ret->str+i)))
+      ret->str[i] = toupper(EXTRACT_UCHAR(ret->str+i));
 
   pop_n_elems(args);
   push_string(end_shared_string(ret));
-- 
GitLab