Commits


gotwebd: fix usage of the commit graph iter got_get_repo_commits mixes ids allocated on the heap and the one returned by the iter_next in the same variable, and then even attemp to free it. This is both a leak (we loose the pointer to the previously allocated id) and a possible invalid free since the object id pointer returned by the graph iterator is not to be passed to free(3). part of a bigger diff that's ok stsp@


gotwebd: free obj_id and reflist in got_output_file_blame ok stsp@


gotwebd: got_output_file_blame: free lines on error path ok stsp@


gotwebd: free eline in got_gotweb_blame_cb loop ok stsp@


gotwebd: drop superfluous check commit_id is not NULL if got_repo_match_object_id returned successfully. ok stsp@


gotwebd: kill unused id_str in got_output_repo_tree ok stsp@


gotwebd: avoid extra strdups in got_output_repo_tree ok stsp@


gotwebd: avoid extra variable in got_output_repo_tree in_repo_path was used only to build a path, it's then assigned to path (which is NULL at that point.) Just asprintf into path. ok stsp@


gotwebd: plugs leaks in got_get_repo_commits call got_get_repo_commit only once and avoid leaking the field of repo_commit at each loop iteration. ok stsp@


gotwebd: free in_repo_path in got_get_repo_commits; ok stsp@


gotwebd: always free ref in got_get_repo_commits some code-paths may leak it. ok stsp@


gotwebd: don't close tag in got_get_repo_tags too early it's still used a bit later, so defer the free'ing at the next loop iteration or at function end.


gotwebd: free commit_msg0 only at the end of got_get_repo_tags in case of a failure between when it's allocated and when it's released it might get leaked otherwise. ok and semplification stsp@


gotwebd: plug some leaks in got_get_repo_tags ok stsp@


gotwebd: free all allocated fields of repo_tag got_get_repo_tags needs some tweaking to how tag_commit is allocated too. ok stsp@