Issue #24848: Fixed yet one bug in UTF-7 decoder. Testing for BASE64 character
was locale depending.
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index 6c46263..9368a3a 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -1555,7 +1555,10 @@
/* Is c a base-64 character? */
#define IS_BASE64(c) \
- (isalnum(c) || (c) == '+' || (c) == '/')
+ (((c) >= 'A' && (c) <= 'Z') || \
+ ((c) >= 'a' && (c) <= 'z') || \
+ ((c) >= '0' && (c) <= '9') || \
+ (c) == '+' || (c) == '/')
/* given that c is a base-64 character, what is its base-64 value? */