Commit Briefs
gotwebd: free all allocated fields of repo_tag
got_get_repo_tags needs some tweaking to how tag_commit is allocated too. ok stsp@
gotwebd: fix possible leaks when handling errors
all very unlikely. part of a bigger diff that's ok stsp@
gotwebd: minor tweaks
drop: - a tautological s[strlen(s)] == '\0' - a few duplicates checks - a lone if (error) when it's always NULL - an extra NULL check part of a bigger diff that's ok stsp@
gotwebd: plug leak in fcgi_parse_params
fcgi_parse_params parses fastcgi parameters into a list. (This is a leftover from slowcgi where that list is later used to populate the environment of the CGI process.) However, this list is never looked at and its memory never released, so just drop it. Make the matching on fastcgi parameters name strictier by checking also that the length is the one we expect; otherwise we might pick up parameters with the same prefix string (i.e. FOO vs FOO_WITH_SUFFIX) While here turn some bcopy into memcpy and simplify some if-nesting too. Fix the reading from an un-initialized pointer that I introduced in a previous commit. ok stsp@
gotwebd: refactor gotweb_load_got_path
- don't special case ".got": if it's a work-tree gotwebd will just fail soon enough. Suggested by stsp@ - avoid an strdup. - drop `opened' to make it easier to follow what's going on. ok stsp@
tog: remove gcc ternary if extension
ok stsp@
fix NULL deref in the object cache debug code; ok stsp@
it's not in code compiled by default as it's under GOT_OBJ_CACHE_DEBUG.
mark check_refcount as static
needed because of -Wmissig-prototypes; ok stsp@