AgeCommit message (Collapse)AuthorLines
Reject option-like revisions in the log walkBryce Kwon-0/+12
The log page passed the id query parameter to git's revision parser without resolving it and ahead of the end-of-options marker. A value like id=--output=/path was then parsed as an option, so an unauthenticated request could create or truncate any file the server user could write. No valid ref or object name begins with a dash.
Cast signed chars before ctype callsBryce Kwon-2/+2
A plain char is undefined in the ctype functions for negative values, which a high byte produces wherever char is signed.
Reorganise into source, assets and librariesBryce Kwon-0/+0
Everything the build generates now lands in build/, so a clean is a single remove and the source tree stays free of build output.