commit 291331c

default  ·  2023-09-23 16:46:24 +0000 UTC
parent ac8790c
Backport from xs.
2 files changed,  +7, -6
M xs.h
M xs.h
+6, -5
 1@@ -849,17 +849,18 @@ xs_str *xs_join(const xs_list *list, const char *sep)
 2             int sz;
 3 
 4             /* add the separator */
 5-            if (c != 0) {
 6+            if (c != 0 && ssz) {
 7                 s = xs_realloc(s, offset + ssz);
 8                 memcpy(s + offset, sep, ssz);
 9                 offset += ssz;
10             }
11 
12             /* add the element */
13-            sz = strlen(v);
14-            s = xs_realloc(s, offset + sz);
15-            memcpy(s + offset, v, sz);
16-            offset += sz;
17+            if ((sz = strlen(v)) > 0) {
18+                s = xs_realloc(s, offset + sz);
19+                memcpy(s + offset, v, sz);
20+                offset += sz;
21+            }
22 
23             c++;
24         }
+1, -1
1@@ -1 +1 @@
2-/* 263e97c8ac21ff8524e3c890fe4310c696d01056 */
3+/* 89589de72ce632da77b0ac4b9d56d3902946b5eb */