# HG changeset patch # User David Demelier # Date 1691091179 -7200 # Node ID dd4bdcfccfc9481090251ff0d1e379c31f3e35a5 # Parent 120febbe6495bc6cd1534768c5a59763e60a5e68# Parent fc08456cce0be81b14b1a229baa501ea772b2962 misc: merge from release-4.0 diff -r 120febbe6495 -r dd4bdcfccfc9 .hgsigs --- a/.hgsigs Wed Feb 08 10:21:18 2023 +0100 +++ b/.hgsigs Thu Aug 03 21:32:59 2023 +0200 @@ -17,3 +17,4 @@ 822afa84648929dc0f6088a1759be441804070cf 0 iQEzBAABCAAdFiEEvr8S/JLqYAXrLA5Xodr5uEAj8x8FAmIAzREACgkQodr5uEAj8x/t9AgAnXY6/7rmMim/ARIV1a5el4HWFqnxS/zqogZ3VnfEpNYxC+ZM0X0AIp+HUXFgsc7ARR6EziDUV0KoR5vPpVQTxVaYM5BwirP0naLNWZTxbNOpDwRJ3C/x9sSzngCWbLUB1GncY2KykeTVqmg6mFDBZ9A9vjtGFFC/QI2mtTgUBED0SuV6804CsclQLXpBI3mSfXl3j3xIyXvaNzBp8917asHUAAciAAYiXeIi6e9MMlj8kMNtTC4pUK7Zf00i1N/OyUzKbBdP8NM9nJIcdR6KpIHENI93nYpVc6WcAWxjnwNKReFsOKIarq6zH1USZfIb0ABbFkHh+Pz4azl6JajiYA== b4b0cbdb7607a195006d4ce58c737120acfcc773 0 iQEzBAABCAAdFiEEvr8S/JLqYAXrLA5Xodr5uEAj8x8FAmPISPUACgkQodr5uEAj8x9Oagf+OjxLL1r4sPaffF/bZau4QprSalF4rut0qaszeqYT4Jrd61H5CSc996h2sekHi8FM90gG435SK/q7dupV9cNo0EPP0ulsD2IwBWSuYQ5XEN1QZr+NGfABrUiouBq7okyDEuvZxWjamVPTlnb1hSOGD2xnig+VpYscso/d7CjU0A3eytfOliNCdQ3QTM105yFMhNu0yaqmqKHcnU95TRPmSUVhCO/74WjSpXBby8i6qmACOTS6EuB1DW/6+032XfXY29bYgap5obd+/6vlrVqjrBGiEKlinU1RXsuYjUiyUG+zEaSWXGJ4CL3Odjcb6hGfbEalI6mhegvdBkQO4Wdslg== b710e59d5225c82d9a03c82ec479d8cf869ee5e1 0 iQEzBAABCAAdFiEEvr8S/JLqYAXrLA5Xodr5uEAj8x8FAmPjZtEACgkQodr5uEAj8x/fowgAq315SzEa8sRfFhFy8owyftkZKosqzxWwL90rDvChC+fRwX7wrAPMK/aBPBr5wiPJ1Sg8QlOD+GUd+C4VpHBL/88RicBt+YxlXnT6LKbqzKpKEpURW+JPtq7Yqif64AWSeepmx5jMXtyooH0Ae/8TJNf/mN26uEpw2cxHaeK2/KnIKq4QfgvAyh0QfNnuv6tHoUB0KmNlxk1b9ss5m/QQi6W5hF/+yzwhQjvgJVYlQ3aSWIBb6QgSmTTO97MM+UtShjovU/B+73+mW7vIk55iJFwYasra8kwEJcPC0y7b6qIX5AxxBr/4j0P9vLyrF4wS8y9bS8SlFgR88TqA63K1XA== +fa99335587ad7468a207b257bfb60647294c10fc 0 iQEzBAABCgAdFiEEvr8S/JLqYAXrLA5Xodr5uEAj8x8FAmTMALUACgkQodr5uEAj8x8XmAf/Wfu5HBmEm5SE+a35zJEdAgeg+X05BR6GqK5/g9W1YABgKzi4bsbIfAD1XAudeDkh56+UwqaXrKu2UzXPIMZ4z46wxDxBuJb2BZsZs2pLxMvIOLg9kCZ287Q8GL0zzapFjg7LGr/MgH+82AL/ZpQT9hP2W7t2573NrLIstd8jXI7+ZQBucde0ihH1JdujWvo2zjm320tyAJ3FAnbnur8aBKKvQr3j+/r3BGZENTNA2Sc43Om64CfZIszipnPDMqLv/P18PJQfclBnvEPfLZ/wYNylC6+ELTNw6f9c8Or0dlGaQJCoJ/Ej4898UIv7w0M5U2caxO8QlbmusqMANG2s5g== diff -r 120febbe6495 -r dd4bdcfccfc9 .hgtags --- a/.hgtags Wed Feb 08 10:21:18 2023 +0100 +++ b/.hgtags Thu Aug 03 21:32:59 2023 +0200 @@ -17,3 +17,4 @@ a362f8de153806d28b0c64730bc0233e1365dc00 4.0.1 55885e9cfbd622b0000eb217699833ffed7ea3e0 4.0.2 3f0e7dbad326e57d391ab9a7514598ecff0ae273 4.0.3 +43e3f7a4045b2bbcbad064627a2cef2496b3d01c 4.0.4 diff -r 120febbe6495 -r dd4bdcfccfc9 CHANGES.md --- a/CHANGES.md Wed Feb 08 10:21:18 2023 +0100 +++ b/CHANGES.md Thu Aug 03 21:32:59 2023 +0200 @@ -1,6 +1,12 @@ IRC Client Daemon CHANGES ========================= +irccd 4.0.4 2023-08-03 +====================== + +- Improve tests running on a slow machines. +- Fix a warning on a invalid comparison. + irccd 4.0.3 2023-02-08 ====================== diff -r 120febbe6495 -r dd4bdcfccfc9 CMakeLists.txt --- a/CMakeLists.txt Wed Feb 08 10:21:18 2023 +0100 +++ b/CMakeLists.txt Thu Aug 03 21:32:59 2023 +0200 @@ -38,7 +38,7 @@ LANGUAGES C DESCRIPTION "IRC Client Daemon" HOMEPAGE_URL "http://projects.malikania.fr/irccd" - VERSION 4.0.3 + VERSION 4.0.4 ) set_property(GLOBAL PROPERTY USE_FOLDERS On) diff -r 120febbe6495 -r dd4bdcfccfc9 lib/irccd/subst.c --- a/lib/irccd/subst.c Wed Feb 08 10:21:18 2023 +0100 +++ b/lib/irccd/subst.c Thu Aug 03 21:32:59 2023 +0200 @@ -139,15 +139,13 @@ static void attributes_parse(const char *key, struct attributes *attrs) { - char attributes[64] = {0}; + char attributes[64] = {0}, *p; memset(attrs, 0, sizeof (*attrs)); sscanf(key, "%15[^,],%15[^,],%63s", attrs->fg, attrs->bg, attributes); for (char *attr = attributes; *attr; ) { - char *p = strchr(attr, ','); - - if (p) + if ((p = strchr(attr, ','))) *p = 0; irc_util_strlcpy(attrs->attrs[attrs->attrsz++], attr, sizeof (attrs->attrs[0])); @@ -216,19 +214,19 @@ { FILE *fp; size_t written; + char *end; /* Accept silently. */ if (!(fp = popen(key, "r"))) return; /* - * Since we cannot determine the number of bytes that must be read, read until the end of - * the output string and cut at the number of bytes read if lesser. + * Since we cannot determine the number of bytes that must be read, + * read until the end of the output string and cut at the number of + * bytes read if lesser. */ if ((written = fread(*out, 1, *outsz - 1, fp)) > 0) { /* Remove '\r\n' */ - char *end; - if ((end = memchr(*out, '\r', written)) || (end = memchr(*out, '\n', written))) *end = '\0'; else @@ -252,7 +250,8 @@ attributes_parse(key, &attrs); - if (attrs.fg[0] || attrs.attrs[0]) { + /* At least a foreground or a font attribute is present. */ + if (attrs.fg[0] || attrs.attrs[0][0]) { if (ccat(out, outsz, '\x03') < 0) return -1; @@ -331,9 +330,8 @@ static int substitute(const char **p, char **out, size_t *outsz, const struct irc_subst *subst) { - char key[64] = {0}; + char key[64] = {0}, *end; size_t keysz; - char *end; int replaced = 1; if (!**p) @@ -437,6 +435,7 @@ if (!is_reserved(*i)) { if (ccat(&o, &outsz, *i++) < 0) goto err; + continue; } diff -r 120febbe6495 -r dd4bdcfccfc9 tests/test-jsapi-system.c --- a/tests/test-jsapi-system.c Wed Feb 08 10:21:18 2023 +0100 +++ b/tests/test-jsapi-system.c Thu Aug 03 21:32:59 2023 +0200 @@ -75,7 +75,7 @@ now = time(NULL); - GREATEST_ASSERT_IN_RANGE(2000LL, difftime(now, start) * 1000LL, 100LL); + GREATEST_ASSERT(difftime(now, start) >= 2); GREATEST_PASS(); } @@ -92,7 +92,7 @@ now = time(NULL); - GREATEST_ASSERT_IN_RANGE(2000LL, difftime(now, start) * 1000LL, 100LL); + GREATEST_ASSERT(difftime(now, start) >= 2); GREATEST_PASS(); }