| Age | Commit message (Collapse) | Author | Lines |
|
The plain, snapshot and blob pages sent a name such as café.txt raw in
filename, which a client may read as ISO-8859-1. RFC 6266 has such a
name sent again as filename*, percent-encoded in UTF-8, for a client
that knows the form, with filename first for one that does not. The
extended form carries UTF-8 alone, so a name that is not valid UTF-8
keeps the plain filename by itself.
|
|
An href carried git://example.org/dépôt.git as it was, and the space
of "with space" too, neither of which a url may hold. html_url_path
would also encode the plus of git+ssh, which breaks the scheme, and the
percent of an escape the url was written with, so a whole url gets a
helper that encodes only the bytes RFC 3986 allows nowhere.
|
|
|
|
|
|
No caller reads the result, and a void html_include fits the Lua
binding's callback as it is, so the wrapper that dropped it goes too.
|
|
|
|
|
|
The HTML parser turns a carriage return with no line feed after it into
a line feed, and WebKit starts a new line at U+2028 and U+2029, while
git and the line numbers count line feeds alone, so each one set every
later line of the tree and blame pages a line below its number. CSS
Text makes vertical tab, form feed and next line forced breaks as well,
though no engine honours that yet. The escapes follow gitweb, which
shows control characters the same way.
|
|
The index description was cut at a byte count, which could split a
multibyte character and leave an invalid sequence on the page. Commit
subjects already backed up to the start of the character, so html_ntxt
now does that for every caller.
|
|
Links built from the repository url, among them the description link
on the index and the Atom and refs links, wrote it as configured, so a
name holding a space, '#' or '?' broke them. The feed link in the page
head did the same with the branch, which turned a '+' into a space.
|
|
The commit and diff pages collect each file's body before printing it,
and a die in git while one was collected wrote the error page into that
body, which was never sent, so the visitor got a page cut off mid table.
|
|
The hop to the trailing-slash form of the about page, and the hop back
to the summary of a repository without a readme, were built from the
path alone, so a request for the about page of another branch landed
on the default one. The query goes into the Location line as the
client sent it, with any byte a header cannot carry percent-encoded.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Everything the build generates now lands in build/, so a clean is a
single remove and the source tree stays free of build output.
|