Commit Briefs

Stefan Sperling

switch diff output mode from "edscript" to "plain" for diff3

getchange() in diff3.c takes any line that starts with an integer and treats it as a hunk header. It doesn't actually require ed script instructions, and traditional ed script diff output would break it. Thus, changing Got's diff3 to rely on plain diff output mode paves the way for implementing traditional ed-script style output in diff.git. Patch by Tom Jones



Omar Polo

plug a leak in match_loose_object

in the loop of match_loose_object we allocate a string per directory entry that in some case it was free(3)'d before `continue' or `goto', but not always. Instead, use a more common idiom. ok stsp@


Mark Jamsek

sync files from diff.git 35eae7fa6b782ae1d000183ef2efc4383dfec4cd

This removes the gcc ternary if extension (includes follow-up diff.git fix for missing '\' in wrapped macro 7a38b3a33f8b124c9c01da154dfdf711d328b01d)


Omar Polo

gotwebd: free scandir(3) result in gotweb_render_index

ok stsp@



Omar Polo

gotwebd: fix leak in gotweb_init_querystring in error path

if strdup fails we fail to free the querystring Found by clang' scan-build.


Omar Polo

gotwebd: add missing fcgi_printf return check

dead store found by clang' scan-build.


Omar Polo

gotwebd: fix assets URLs

In 95a4a5a1e8d0952ee0d2523dc31df7170d80e0b3 I forgot to fix the links for the favicons and the web manifest.


Stefan Sperling

fix regression in gotweb_free_repo_tag(): free(...): modified chunk-pointer

problem introduced in commit 625e5896fc9ecf87ccfc92ad2a65cd3be58f73c0



Omar Polo

gotwebd: free all allocated fields of repo_tag

got_get_repo_tags needs some tweaking to how tag_commit is allocated too. ok stsp@


Omar Polo

gotwebd: fix possible leaks when handling errors

all very unlikely. part of a bigger diff that's ok stsp@


Omar Polo

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@


Omar Polo

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@



Omar Polo

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@


Stefan Sperling

make gotwebd cache open repository handles in struct server

ok op@


Omar Polo

indent


Omar Polo

gotwebd: plug two memory leak and drop unneeded ternary

ok tracey@



Mark Jamsek

tog: remove gcc ternary if extension

ok stsp@


Stefan Sperling

add a gotwebd todo item


Stefan Sperling

remove gotwebd TODO items that are done