commit 03f6a843c825ee4566446557cfa33bd1ebb1827b from: Omar Polo date: Sat Dec 17 08:28:56 2022 UTC gotwebd: drop index_page_str and page_str gotwebd uses sprintf to update index_page_str and page_str if they were negative. While this specific usage is safe, let's drop it. Since the index_page_str and page_str fields are never read from, remove them. This saves two allocations per request too. ok tracey@ commit - 6169d054065c0cf8901f97798d42785fc28819cf commit + 03f6a843c825ee4566446557cfa33bd1ebb1827b blob - 457891c2c6c6e2e695f33d292ea9e53fefdefb7c blob + 2edd61056bd5e9810fd5939e2e83708865ba7ce5 --- gotwebd/gotweb.c +++ gotwebd/gotweb.c @@ -355,7 +355,6 @@ gotweb_init_querystring(struct querystring **qs) (*qs)->file = NULL; (*qs)->folder = NULL; (*qs)->index_page = 0; - (*qs)->index_page_str = NULL; (*qs)->path = NULL; return error; @@ -522,12 +521,6 @@ qa_found: case INDEX_PAGE: if (strlen(value) == 0) break; - (*qs)->index_page_str = strdup(value); - if ((*qs)->index_page_str == NULL) { - error = got_error_from_errno2("%s: strdup", - __func__); - goto done; - } (*qs)->index_page = strtonum(value, INT64_MIN, INT64_MAX, &errstr); if (errstr) { @@ -535,10 +528,8 @@ qa_found: __func__, errstr); goto done; } - if ((*qs)->index_page < 0) { + if ((*qs)->index_page < 0) (*qs)->index_page = 0; - sprintf((*qs)->index_page_str, "%d", 0); - } break; case PATH: (*qs)->path = strdup(value); @@ -551,12 +542,6 @@ qa_found: case PAGE: if (strlen(value) == 0) break; - (*qs)->page_str = strdup(value); - if ((*qs)->page_str == NULL) { - error = got_error_from_errno2("%s: strdup", - __func__); - goto done; - } (*qs)->page = strtonum(value, INT64_MIN, INT64_MAX, &errstr); if (errstr) { @@ -564,10 +549,8 @@ qa_found: __func__, errstr); goto done; } - if ((*qs)->page < 0) { + if ((*qs)->page < 0) (*qs)->page = 0; - sprintf((*qs)->page_str, "%d", 0); - } break; default: break; @@ -614,9 +597,7 @@ gotweb_free_querystring(struct querystring *qs) free(qs->file); free(qs->folder); free(qs->headref); - free(qs->index_page_str); free(qs->path); - free(qs->page_str); } free(qs); } blob - 64fce7c6d8ee3f57305034f0c0434cff991a82bd blob + db15603fe2e34e9c6f0b3d4a599e93a5777bfd72 --- gotwebd/gotwebd.h +++ gotwebd/gotwebd.h @@ -373,10 +373,8 @@ struct querystring { char *folder; char *headref; int index_page; - char *index_page_str; char *path; int page; - char *page_str; }; struct querystring_keys {