commit 3d6d1fb0b8a423e777c05cd69b1fb57fd69dd94c from: Omar Polo via: Thomas Adam date: Fri Dec 30 14:58:03 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 - 8ea2e76efa46b2e518a3e42ed90787d73dff3f96 commit + 3d6d1fb0b8a423e777c05cd69b1fb57fd69dd94c blob - 846113c5021672fc2790cc93baebbbd4a5941488 blob + 661014fad988a39c7ca9f4324f708ee909db84c0 --- gotwebd/gotweb.c +++ gotwebd/gotweb.c @@ -354,7 +354,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; @@ -521,12 +520,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) { @@ -534,10 +527,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); @@ -550,12 +541,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) { @@ -563,10 +548,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; @@ -613,9 +596,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 {