summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--request.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/request.h b/request.h
index ddf296d..29dfa7a 100644
--- a/request.h
+++ b/request.h
@@ -36,6 +36,9 @@ inline void request(size_t (*writefunction)(void *, size_t, size_t, void *)
} while ((uval /= 10));
length -= 2;
break;
+ case 'c':
+ length++;
+ break;
default:
break;
}
@@ -43,6 +46,7 @@ inline void request(size_t (*writefunction)(void *, size_t, size_t, void *)
va_end(ap);
char url[length + 1];
+ length = 0;
strcpy(url, server_url);
va_start(ap, fmt);
@@ -53,10 +57,15 @@ inline void request(size_t (*writefunction)(void *, size_t, size_t, void *)
case 's':
sval = va_arg(ap, char *);
strcat(url, sval);
+ length = strlen(url);
break;
case 'u':
uval = va_arg(ap, unsigned int);
sprintf(url, "%s%u", url, uval);
+ length = strlen(url);
+ break;
+ case 'c':
+ url[length++] = (char)va_arg(ap, int);
break;
default:
break;