Improve some loops

This commit is contained in:
Timo Ley 2022-06-23 14:13:33 +02:00
parent 5ed625c69f
commit e15666a176
3 changed files with 6 additions and 7 deletions

View file

@ -152,7 +152,7 @@ int httplib_parse_header(http_request * self, char * str) {
self->headers = httplib_header_new(key, value);
} else {
http_header * run = self->headers;
while (run != 0) {
while (run) {
if (run->next == 0) {
run->next = httplib_header_new(key, value);
break;

View file

@ -30,7 +30,7 @@ int httplib_response_serialize(http_response * res, char * str_out) {
strcat(str_out, res->status_message);
strcat(str_out, "\r\n");
http_header * run = res->headers;
while (run != 0) {
while (run) {
char * tmp = malloc(httplib_header_string_size(run));
int err = httplib_header_serialize(run, tmp);
if (err != 0) return err;
@ -48,8 +48,7 @@ int httplib_response_serialize(http_response * res, char * str_out) {
strcat(str_out, "\r\n");
}
strcat(str_out, "\r\n");
size_t end_pos = 0;
while (str_out[end_pos] != '\0') end_pos++;
size_t end_pos = strlen(str_out) - 1;
if (res->body != 0) {
for (size_t i = 0; i < res->content_length; i++) {
str_out[end_pos + i] = res->body[i];
@ -62,7 +61,7 @@ size_t httplib_response_string_size(http_response * res) {
size_t res_line = 15 + strlen(res->status_message); //"HTTP/1.1" 000 (message)\r\n
size_t headers = 2; // \r\n
http_header * run = res->headers;
while (run != 0) {
while (run) {
headers += httplib_header_string_size(run) + 1; // \r\n instead of \0
run = run->next;
}

View file

@ -41,7 +41,7 @@ int httplib_response_add_header(http_response * self, char * key, char * value)
self->headers = httplib_header_new(key, value);
} else {
http_header * run = self->headers;
while (run != 0) {
while (run) {
if (run->next == 0) {
run->next = httplib_header_new(key, value);
break;
@ -54,7 +54,7 @@ int httplib_response_add_header(http_response * self, char * key, char * value)
char * httplib_request_get_header(http_request * self, char * key) {
http_header * run = self->headers;
while (run != 0) {
while (run) {
if (!strcasecmp(key, run->key)) {
char * value = malloc(strlen(run->value)+1);
strcpy(value, run->value);