pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/chat/libpurple
Module Name: pkgsrc
Committed By: wiz
Date: Sun Oct 5 16:01:16 UTC 2025
Modified Files:
pkgsrc/chat/libpurple: Makefile distinfo
Added Files:
pkgsrc/chat/libpurple/patches: patch-libpurple_plugins_log_reader.c
patch-libpurple_protocols_gg_lib_dcc.c
patch-libpurple_protocols_gg_lib_events.c
patch-libpurple_protocols_gg_lib_handlers.c
patch-libpurple_protocols_gg_lib_message.c
patch-libpurple_protocols_irc_msgs.c
patch-libpurple_protocols_irc_parse.c
patch-libpurple_protocols_novell_nmconn.c
patch-libpurple_protocols_zephyr_ZVariables.c
patch-libpurple_protocols_zephyr_zephyr.c patch-libpurple_util.c
patch-pidgin_gtkthemes.c
Log Message:
libpurple: more ctype(3) fixes from Anthony Mallet.
Bump PKGREVISION.
To generate a diff of this commit:
cvs rdiff -u -r1.136 -r1.137 pkgsrc/chat/libpurple/Makefile
cvs rdiff -u -r1.60 -r1.61 pkgsrc/chat/libpurple/distinfo
cvs rdiff -u -r0 -r1.1 \
pkgsrc/chat/libpurple/patches/patch-libpurple_plugins_log_reader.c \
pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_dcc.c \
pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_events.c \
pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_handlers.c \
pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_message.c \
pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_irc_msgs.c \
pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_irc_parse.c \
pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_novell_nmconn.c \
pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_zephyr_ZVariables.c \
pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_zephyr_zephyr.c \
pkgsrc/chat/libpurple/patches/patch-libpurple_util.c \
pkgsrc/chat/libpurple/patches/patch-pidgin_gtkthemes.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/chat/libpurple/Makefile
diff -u pkgsrc/chat/libpurple/Makefile:1.136 pkgsrc/chat/libpurple/Makefile:1.137
--- pkgsrc/chat/libpurple/Makefile:1.136 Sun Oct 5 07:39:53 2025
+++ pkgsrc/chat/libpurple/Makefile Sun Oct 5 16:01:15 2025
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.136 2025/10/05 07:39:53 wiz Exp $
+# $NetBSD: Makefile,v 1.137 2025/10/05 16:01:15 wiz Exp $
PKGNAME= libpurple-${PIDGIN_VERSION}
-PKGREVISION= 3
+PKGREVISION= 4
COMMENT= Plugin-based multi-protocol instant messaging library
Index: pkgsrc/chat/libpurple/distinfo
diff -u pkgsrc/chat/libpurple/distinfo:1.60 pkgsrc/chat/libpurple/distinfo:1.61
--- pkgsrc/chat/libpurple/distinfo:1.60 Sun Oct 5 07:39:53 2025
+++ pkgsrc/chat/libpurple/distinfo Sun Oct 5 16:01:15 2025
@@ -1,7 +1,19 @@
-$NetBSD: distinfo,v 1.60 2025/10/05 07:39:53 wiz Exp $
+$NetBSD: distinfo,v 1.61 2025/10/05 16:01:15 wiz Exp $
BLAKE2s (pidgin-2.14.14.tar.bz2) = 0cd37c6b2632abbbf98df254f1c7dc8478bbdaba1ddca897ca508b20b0c123e3
SHA512 (pidgin-2.14.14.tar.bz2) = 2d1ee55e701983871762b5307a2c13fa4431b388229aee7c27522ba593a4c79df729be04cda91f44b3cc9663ca0579bf66b722cdcbd71cae3b8c2dbe75c1f24d
Size (pidgin-2.14.14.tar.bz2) = 8121174 bytes
+SHA1 (patch-libpurple_plugins_log_reader.c) = e75dfd2c29fa99293ef007f51f2f0416069dcabc
SHA1 (patch-libpurple_plugins_perl_common_Makefile.PL.in) = 4fc1c7cc2df8f4cf179d00fe3bcf5b2ab0c5adbd
+SHA1 (patch-libpurple_protocols_gg_lib_dcc.c) = 395d873d339b1f39bda6019e12af364bbca7d8cd
+SHA1 (patch-libpurple_protocols_gg_lib_events.c) = 90e81a179f77a375907571d548537ea7059a83ff
+SHA1 (patch-libpurple_protocols_gg_lib_handlers.c) = 85b07ec94e96978c961b26992e589882c4be271d
+SHA1 (patch-libpurple_protocols_gg_lib_message.c) = dce2aac28a9a593cc3943f416db978d70618369f
+SHA1 (patch-libpurple_protocols_irc_msgs.c) = a7e395ba0ad7b52a74de480127572bcda6558e2e
+SHA1 (patch-libpurple_protocols_irc_parse.c) = 32b6578b67881ff4578dfd8f5ed3a23cbe7df9a0
+SHA1 (patch-libpurple_protocols_novell_nmconn.c) = a49cb0cd662e769bc62643c514b728da1c6d5860
+SHA1 (patch-libpurple_protocols_zephyr_ZVariables.c) = 56cf153ed471ddd0f4d64caeaeef69bd19bc2d16
+SHA1 (patch-libpurple_protocols_zephyr_zephyr.c) = 10612b4d08f88187b9f9cbda792a6e94bd4c7b7c
+SHA1 (patch-libpurple_util.c) = 49b4600574c0cb1158b7988e0e00b80a7b696577
SHA1 (patch-pidgin_gtkimhtml.c) = 54af515155ae2d3326b405516158865d365102c7
+SHA1 (patch-pidgin_gtkthemes.c) = ac07d18d74745afdaf6bae2aee67d8fbc0753a36
Added files:
Index: pkgsrc/chat/libpurple/patches/patch-libpurple_plugins_log_reader.c
diff -u /dev/null pkgsrc/chat/libpurple/patches/patch-libpurple_plugins_log_reader.c:1.1
--- /dev/null Sun Oct 5 16:01:16 2025
+++ pkgsrc/chat/libpurple/patches/patch-libpurple_plugins_log_reader.c Sun Oct 5 16:01:15 2025
@@ -0,0 +1,67 @@
+$NetBSD: patch-libpurple_plugins_log_reader.c,v 1.1 2025/10/05 16:01:15 wiz Exp $
+
+Fix -Wchar-subscripts in ctype(3) functions
+
+--- libpurple/plugins/log_reader.c~ 2024-09-17 21:31:28.000000000 +0200
++++ libpurple/plugins/log_reader.c 2025-10-05 15:09:15.646785462 +0200
+@@ -998,15 +998,15 @@
+ * ^(friendly_name|alias)([^a-zA-Z0-9].*)?$
+ */
+ from_name_matches = (purple_str_has_prefix(from_name, friendly_name) &&
+- !isalnum(*(from_name + friendly_name_length))) ||
++ !isalnum((unsigned char)*(from_name + friendly_name_length))) ||
+ (purple_str_has_prefix(from_name, alias) &&
+- !isalnum(*(from_name + alias_length)));
++ !isalnum((unsigned char)*(from_name + alias_length)));
+
+ to_name_matches = to_name != NULL && (
+ (purple_str_has_prefix(to_name, friendly_name) &&
+- !isalnum(*(to_name + friendly_name_length))) ||
++ !isalnum((unsigned char)*(to_name + friendly_name_length))) ||
+ (purple_str_has_prefix(to_name, alias) &&
+- !isalnum(*(to_name + alias_length))));
++ !isalnum((unsigned char)*(to_name + alias_length))));
+
+ if (from_name_matches) {
+ if (!to_name_matches) {
+@@ -1024,7 +1024,7 @@
+ * character. The idea is to relax the comparison.
+ */
+ for (temp = alias; *temp ; temp++) {
+- if (!isalnum(*temp)) {
++ if (!isalnum((unsigned char)*temp)) {
+ *temp = '\0';
+ break;
+ }
+@@ -1038,12 +1038,12 @@
+ */
+ from_name_matches = (purple_str_has_prefix(
+ from_name, alias) &&
+- !isalnum(*(from_name +
++ !isalnum((unsigned char)*(from_name +
+ alias_length)));
+
+ to_name_matches = to_name && (purple_str_has_prefix(
+ to_name, alias) &&
+- !isalnum(*(to_name +
++ !isalnum((unsigned char)*(to_name +
+ alias_length)));
+
+ g_free(alias);
+@@ -1067,13 +1067,14 @@
+ from_name_matches = (purple_str_has_prefix(
+ from_name,
+ server_alias) &&
+- !isalnum(*(from_name +
++ !isalnum((unsigned char)*(from_name +
+ friendly_name_length)));
+
+ to_name_matches = to_name && (
+ (purple_str_has_prefix(
+ to_name, server_alias) &&
+- !isalnum(*(to_name +
++ !isalnum((unsigned char)*(to_name
++ +
+ friendly_name_length))));
+
+ if (from_name_matches) {
Index: pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_dcc.c
diff -u /dev/null pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_dcc.c:1.1
--- /dev/null Sun Oct 5 16:01:16 2025
+++ pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_dcc.c Sun Oct 5 16:01:15 2025
@@ -0,0 +1,24 @@
+$NetBSD: patch-libpurple_protocols_gg_lib_dcc.c,v 1.1 2025/10/05 16:01:15 wiz Exp $
+
+Fix -Wchar-subscripts in ctype(3) functions
+
+--- libpurple/protocols/gg/lib/dcc.c~ 2024-09-17 10:52:23.000000000 +0200
++++ libpurple/protocols/gg/lib/dcc.c 2025-10-05 15:11:48.358953003 +0200
+@@ -180,7 +180,7 @@
+ ext = name + strlen(name);
+
+ for (i = 0, p = name; i < 8 && p < ext; i++, p++)
+- d->file_info.short_filename[i] = toupper(name[i]);
++ d->file_info.short_filename[i] = toupper((unsigned char)name[i]);
+
+ if (i == 8 && p < ext) {
+ d->file_info.short_filename[6] = '~';
+@@ -189,7 +189,7 @@
+
+ if (strlen(ext) > 0) {
+ for (j = 0; *ext && j < 4; j++, p++)
+- d->file_info.short_filename[i + j] = toupper(ext[j]);
++ d->file_info.short_filename[i + j] = toupper((unsigned char)ext[j]);
+ }
+
+ for (q = d->file_info.short_filename; *q; q++) {
Index: pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_events.c
diff -u /dev/null pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_events.c:1.1
--- /dev/null Sun Oct 5 16:01:16 2025
+++ pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_events.c Sun Oct 5 16:01:15 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-libpurple_protocols_gg_lib_events.c,v 1.1 2025/10/05 16:01:15 wiz Exp $
+
+Fix -Wchar-subscripts in ctype(3) functions
+
+--- libpurple/protocols/gg/lib/events.c~ 2024-09-17 10:52:23.000000000 +0200
++++ libpurple/protocols/gg/lib/events.c 2025-10-05 15:10:34.843089139 +0200
+@@ -874,7 +874,7 @@
+ int proxy;
+ size_t req_len;
+
+- if (sess->client_version != NULL && isdigit(sess->client_version[0]))
++ if (sess->client_version != NULL && isdigit((unsigned char)sess->client_version[0]))
+ client = gg_urlencode(sess->client_version);
+ else if (sess->protocol_version <= GG_PROTOCOL_VERSION_100)
+ client = gg_urlencode(GG_DEFAULT_CLIENT_VERSION_100);
Index: pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_handlers.c
diff -u /dev/null pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_handlers.c:1.1
--- /dev/null Sun Oct 5 16:01:16 2025
+++ pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_handlers.c Sun Oct 5 16:01:15 2025
@@ -0,0 +1,24 @@
+$NetBSD: patch-libpurple_protocols_gg_lib_handlers.c,v 1.1 2025/10/05 16:01:15 wiz Exp $
+
+Fix -Wchar-subscripts in ctype(3) functions
+
+--- libpurple/protocols/gg/lib/handlers.c~ 2024-09-17 10:52:23.000000000 +0200
++++ libpurple/protocols/gg/lib/handlers.c 2025-10-05 15:10:42.887977927 +0200
+@@ -117,7 +117,7 @@
+ return -1;
+ }
+
+- if (gs->client_version != NULL && !isdigit(gs->client_version[0])) {
++ if (gs->client_version != NULL && !isdigit((unsigned char)gs->client_version[0])) {
+ client_name = "";
+ client_target = "";
+ }
+@@ -314,7 +314,7 @@
+ l80.image_size = gs->image_size;
+ l80.dunno2 = 0x64;
+
+- if (gs->client_version != NULL && !isdigit(gs->client_version[0])) {
++ if (gs->client_version != NULL && !isdigit((unsigned char)gs->client_version[0])) {
+ client_name = "";
+ client_name_len = 0;
+ } else {
Index: pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_message.c
diff -u /dev/null pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_message.c:1.1
--- /dev/null Sun Oct 5 16:01:16 2025
+++ pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_gg_lib_message.c Sun Oct 5 16:01:15 2025
@@ -0,0 +1,42 @@
+$NetBSD: patch-libpurple_protocols_gg_lib_message.c,v 1.1 2025/10/05 16:01:15 wiz Exp $
+
+Fix -Wchar-subscripts in ctype(3) functions
+
+--- libpurple/protocols/gg/lib/message.c~ 2024-09-17 10:52:23.000000000 +0200
++++ libpurple/protocols/gg/lib/message.c 2025-10-05 15:11:19.337069955 +0200
+@@ -694,7 +694,7 @@
+ *format_len = 0;
+
+ for (src = html; *src != 0; src++) {
+- if (in_entity && !(isalnum(*src) || *src == '#' || *src == ';')) {
++ if (in_entity && !(isalnum((unsigned char)*src) || *src == '#' || *src == ';')) {
+ int first = 1;
+ size_t i, append_len = src - entity;
+
+@@ -738,7 +738,7 @@
+ int i, ok = 1;
+
+ for (i = 0; i < 16; i++) {
+- if (!isxdigit(tag[i])) {
++ if (!isxdigit((unsigned char)tag[i])) {
+ ok = 0;
+ break;
+ }
+@@ -839,7 +839,7 @@
+ break;
+
+ for (i = 0; i < 6; i++) {
+- if (!isxdigit(tag[i])) {
++ if (!isxdigit((unsigned char)tag[i])) {
+ ok = 0;
+ break;
+ }
+@@ -914,7 +914,7 @@
+ continue;
+ }
+
+- if (in_entity && !(isalnum(*src) || *src == '#'))
++ if (in_entity && !(isalnum((unsigned char)*src) || *src == '#'))
+ in_entity = 0;
+
+ if (in_entity)
Index: pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_irc_msgs.c
diff -u /dev/null pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_irc_msgs.c:1.1
--- /dev/null Sun Oct 5 16:01:16 2025
+++ pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_irc_msgs.c Sun Oct 5 16:01:15 2025
@@ -0,0 +1,17 @@
+$NetBSD: patch-libpurple_protocols_irc_msgs.c,v 1.1 2025/10/05 16:01:15 wiz Exp $
+
+Fix -Wchar-subscripts in ctype(3) functions
+
+--- libpurple/protocols/irc/msgs.c~ 2024-09-17 10:52:23.000000000 +0200
++++ libpurple/protocols/irc/msgs.c 2025-10-05 15:12:52.281588294 +0200
+@@ -149,8 +149,8 @@
+ /* Check for 3-digit numeric in second position */
+ if (i == 1) {
+ if (end - cur != 3
+- || !isdigit(cur[0]) || !isdigit(cur[1])
+- || !isdigit(cur[2])) {
++ || !isdigit((unsigned char)cur[0]) || !isdigit((unsigned char)cur[1])
++ || !isdigit((unsigned char)cur[2])) {
+ goto undirected;
+ }
+ /* Save the numeric for printing to the channel */
Index: pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_irc_parse.c
diff -u /dev/null pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_irc_parse.c:1.1
--- /dev/null Sun Oct 5 16:01:16 2025
+++ pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_irc_parse.c Sun Oct 5 16:01:15 2025
@@ -0,0 +1,47 @@
+$NetBSD: patch-libpurple_protocols_irc_parse.c,v 1.1 2025/10/05 16:01:15 wiz Exp $
+
+Fix -Wchar-subscripts in ctype(3) functions
+
+--- libpurple/protocols/irc/parse.c~ 2024-10-25 09:38:45.000000000 +0200
++++ libpurple/protocols/irc/parse.c 2025-10-05 15:12:38.279670906 +0200
+@@ -408,15 +408,15 @@
+ case '\003':
+ cur++;
+ fg[0] = fg[1] = bg[0] = bg[1] = '\0';
+- if (isdigit(*cur))
++ if (isdigit((unsigned char)*cur))
+ fg[0] = *cur++;
+- if (isdigit(*cur))
++ if (isdigit((unsigned char)*cur))
+ fg[1] = *cur++;
+ if (*cur == ',') {
+ cur++;
+- if (isdigit(*cur))
++ if (isdigit((unsigned char)*cur))
+ bg[0] = *cur++;
+- if (isdigit(*cur))
++ if (isdigit((unsigned char)*cur))
+ bg[1] = *cur++;
+ }
+ if (font) {
+@@ -498,16 +498,16 @@
+ switch (result[i]) {
+ case '\003':
+ /* Foreground color */
+- if (isdigit(result[i + 1]))
++ if (isdigit((unsigned char)result[i + 1]))
+ i++;
+- if (isdigit(result[i + 1]))
++ if (isdigit((unsigned char)result[i + 1]))
+ i++;
+ /* Optional comma and background color */
+ if (result[i + 1] == ',') {
+ i++;
+- if (isdigit(result[i + 1]))
++ if (isdigit((unsigned char)result[i + 1]))
+ i++;
+- if (isdigit(result[i + 1]))
++ if (isdigit((unsigned char)result[i + 1]))
+ i++;
+ }
+ /* Note that i still points to the last character
Index: pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_novell_nmconn.c
diff -u /dev/null pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_novell_nmconn.c:1.1
--- /dev/null Sun Oct 5 16:01:16 2025
+++ pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_novell_nmconn.c Sun Oct 5 16:01:16 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-libpurple_protocols_novell_nmconn.c,v 1.1 2025/10/05 16:01:16 wiz Exp $
+
+Fix -Wchar-subscripts in ctype(3) functions
+
+--- libpurple/protocols/novell/nmconn.c~ 2024-09-17 10:52:23.000000000 +0200
++++ libpurple/protocols/novell/nmconn.c 2025-10-05 15:13:26.469842018 +0200
+@@ -512,7 +512,7 @@
+ ptr++;
+
+ i = 0;
+- while (isdigit(*ptr) && (i < 3)) {
++ while (isdigit((unsigned char)*ptr) && (i < 3)) {
+ rtn_buf[i] = *ptr;
+ i++;
+ ptr++;
Index: pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_zephyr_ZVariables.c
diff -u /dev/null pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_zephyr_ZVariables.c:1.1
--- /dev/null Sun Oct 5 16:01:16 2025
+++ pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_zephyr_ZVariables.c Sun Oct 5 16:01:16 2025
@@ -0,0 +1,24 @@
+$NetBSD: patch-libpurple_protocols_zephyr_ZVariables.c,v 1.1 2025/10/05 16:01:16 wiz Exp $
+
+Fix -Wchar-subscripts in ctype(3) functions
+
+--- libpurple/protocols/zephyr/ZVariables.c~ 2025-01-21 17:44:24.000000000 +0100
++++ libpurple/protocols/zephyr/ZVariables.c 2025-10-05 15:14:01.480961180 +0200
+@@ -198,7 +198,7 @@
+ return (0);
+
+ cp = bfr;
+- while (*cp && !isspace(*cp) && (*cp != '='))
++ while (*cp && !isspace((unsigned char)*cp) && (*cp != '='))
+ cp++;
+
+ #ifndef WIN32
+@@ -213,7 +213,7 @@
+ if (!cp)
+ return(0);
+ cp++;
+- while (*cp && isspace(*cp)) /* space up to variable value */
++ while (*cp && isspace((unsigned char)*cp)) /* space up to variable value */
+ cp++;
+
+ return (cp - bfr); /* return index */
Index: pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_zephyr_zephyr.c
diff -u /dev/null pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_zephyr_zephyr.c:1.1
--- /dev/null Sun Oct 5 16:01:16 2025
+++ pkgsrc/chat/libpurple/patches/patch-libpurple_protocols_zephyr_zephyr.c Sun Oct 5 16:01:16 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-libpurple_protocols_zephyr_zephyr.c,v 1.1 2025/10/05 16:01:16 wiz Exp $
+
+Fix -Wchar-subscripts in ctype(3) functions
+
+--- libpurple/protocols/zephyr/zephyr.c~ 2024-09-17 21:31:28.000000000 +0200
++++ libpurple/protocols/zephyr/zephyr.c 2025-10-05 15:14:28.248010827 +0200
+@@ -627,7 +627,7 @@
+ message += 2;
+ } else if (*message == '@') {
+ int end;
+- for (end = 1; message[end] && (isalnum(message[end]) || message[end] == '_'); end++);
++ for (end = 1; message[end] && (isalnum((unsigned char)message[end]) || message[end] == '_'); end++);
+ if (message[end] &&
+ (message[end] == '{' || message[end] == '[' || message[end] == '(' ||
+ !g_ascii_strncasecmp(message + end, "<", 4))) {
Index: pkgsrc/chat/libpurple/patches/patch-libpurple_util.c
diff -u /dev/null pkgsrc/chat/libpurple/patches/patch-libpurple_util.c:1.1
--- /dev/null Sun Oct 5 16:01:16 2025
+++ pkgsrc/chat/libpurple/patches/patch-libpurple_util.c Sun Oct 5 16:01:16 2025
@@ -0,0 +1,72 @@
+$NetBSD: patch-libpurple_util.c,v 1.1 2025/10/05 16:01:16 wiz Exp $
+
+Fix -Wchar-subscripts in ctype(3) functions
+
+--- libpurple/util.c~ 2024-09-17 10:52:23.000000000 +0200
++++ libpurple/util.c 2025-10-05 15:18:10.643015312 +0200
+@@ -215,11 +215,11 @@
+ else
+ accumulator <<= 4;
+
+- if (isdigit(str[i]))
++ if (isdigit((unsigned char)str[i]))
+ accumulator |= str[i] - 48;
+ else
+ {
+- switch(tolower(str[i]))
++ switch(tolower((unsigned char)str[i]))
+ {
+ case 'a': accumulator |= 10; break;
+ case 'b': accumulator |= 11; break;
+@@ -310,8 +310,8 @@
+ n -= 1;
+ p += 1;
+ } else if (p[1] && p[2]) {
+- char *nibble1 = strchr(xdigits, tolower(p[1]));
+- char *nibble2 = strchr(xdigits, tolower(p[2]));
++ char *nibble1 = strchr(xdigits, tolower((unsigned char)p[1]));
++ char *nibble2 = strchr(xdigits, tolower((unsigned char)p[2]));
+ if (nibble1 && nibble2) { /* 5.1 #1 */
+ *n = ((nibble1 - xdigits) << 4) | (nibble2 - xdigits);
+ p += 2;
+@@ -362,11 +362,11 @@
+
+ /* token can be any CHAR (supposedly ISO8859-1/ISO2022), not just ASCII */
+ #define token_char_p(c) \
+- (c != ' ' && !iscntrl(c) && !strchr("()<>@,;:\"/[]?.=", c))
++ (c != ' ' && !iscntrl((unsigned char)c) && !strchr("()<>@,;:\"/[]?.=", c))
+
+ /* But encoded-text must be ASCII; alas, isascii() may not exist */
+ #define encoded_text_char_p(c) \
+- ((c & 0x80) == 0 && c != '?' && c != ' ' && isgraph(c))
++ ((c & 0x80) == 0 && c != '?' && c != ' ' && isgraph((unsigned char)c))
+
+ g_return_val_if_fail(str != NULL, NULL);
+
+@@ -4588,7 +4588,7 @@
+ */
+ while (p) {
+ if (*p != '#') {
+- while (isspace(*p))
++ while (isspace((unsigned char)*p))
+ p++;
+
+ q = p;
+@@ -4597,7 +4597,7 @@
+
+ if (q > p) {
+ q--;
+- while (q > p && isspace(*q))
++ while (q > p && isspace((unsigned char)*q))
+ q--;
+
+ retval = (gchar*)g_malloc (q - p + 2);
+@@ -5124,7 +5124,7 @@
+ if (act && purple_strequal(protocol, "prpl-oscar")) {
+ int i;
+ for (i = 0; act[i] != '\0'; i++)
+- if (!isdigit(act[i]))
++ if (!isdigit((unsigned char)act[i]))
+ return "prpl-aim";
+ return "prpl-icq";
+ }
Index: pkgsrc/chat/libpurple/patches/patch-pidgin_gtkthemes.c
diff -u /dev/null pkgsrc/chat/libpurple/patches/patch-pidgin_gtkthemes.c:1.1
--- /dev/null Sun Oct 5 16:01:16 2025
+++ pkgsrc/chat/libpurple/patches/patch-pidgin_gtkthemes.c Sun Oct 5 16:01:16 2025
@@ -0,0 +1,33 @@
+$NetBSD: patch-pidgin_gtkthemes.c,v 1.1 2025/10/05 16:01:16 wiz Exp $
+
+Fix -Wchar-subscripts in ctype(3) functions
+
+--- pidgin/gtkthemes.c~ 2024-09-17 10:52:23.000000000 +0200
++++ pidgin/gtkthemes.c 2025-10-05 15:02:26.450840225 +0200
+@@ -287,7 +287,7 @@
+ }
+
+ i = buf;
+- while (isspace(*i))
++ while (isspace((unsigned char)*i))
+ i++;
+
+ if (*i == '[' && strchr(i, ']') && load) {
+@@ -325,7 +325,7 @@
+ char l[64];
+ size_t li = 0;
+ char *next;
+- while (*i && !isspace(*i) && li < sizeof(l) - 1) {
++ while (*i && !isspace((unsigned char)*i) && li < sizeof(l) - 1) {
+ if (*i == '\\' && *(i+1) != '\0')
+ i++;
+ /* coverity[tainted_data] */
+@@ -343,7 +343,7 @@
+ GtkIMHtmlSmiley *smiley = gtk_imhtml_smiley_create(sfile, l, hidden, 0);
+ list->smileys = g_slist_prepend(list->smileys, smiley);
+ }
+- while (isspace(*i))
++ while (isspace((unsigned char)*i))
+ i++;
+
+ }
Home |
Main Index |
Thread Index |
Old Index