commit aa82e14

default  ·  2022-12-11 09:33:01 +0000 UTC
parent 0337c71
Backport from xs.
3 files changed,  +5, -4
M xs.h
M xs.h
+2, -1
 1@@ -914,7 +914,8 @@ void *xs_memmem(const char *haystack, int h_size, const char *needle, int n_size
 2     char *p, *r = NULL;
 3     int offset = 0;
 4 
 5-    while (!r && h_size - offset > n_size && (p = strchr(haystack + offset, *needle))) {
 6+    while (!r && h_size - offset > n_size &&
 7+           (p = memchr(haystack + offset, *needle, h_size - offset))) {
 8         if (memcmp(p, needle, n_size) == 0)
 9             r = p;
10         else
+2, -2
 1@@ -131,13 +131,13 @@ d_char *_xs_multipart_form_data(char *payload, int p_size, char *header)
 2         }
 3 
 4         /* find the start of the part content */
 5-        if ((p = xs_memmem(p, p_size - offset, "\r\n\r\n", 4)) == NULL)
 6+        if ((p = xs_memmem(p, p_size - (p - payload), "\r\n\r\n", 4)) == NULL)
 7             break;
 8 
 9         p += 4;
10 
11         /* find the next boundary */
12-        if ((q = xs_memmem(p, p_size - offset, boundary, bsz)) == NULL)
13+        if ((q = xs_memmem(p, p_size - (p - payload), boundary, bsz)) == NULL)
14             break;
15 
16         po = p - payload;
+1, -1
1@@ -1 +1 @@
2-/* 3aa82bc4fc310ec95194602bed88a9767e100350 */
3+/* d5a6108812a499a389030a1402ce49f282b4a818 */