AgeCommit message (Collapse)AuthorLines
Trim trailing slashes with git's strbuf helperBryce Kwon-12/+4
Build the full current url from the current urlBryce Kwon-8/+3
Fold the va_list error page into its one callerBryce Kwon-13/+4
Ask head_is_named before carrying the branchBryce Kwon-1/+1
Let self_link's fallback be a plain reporevlinkBryce Kwon-8/+2
Escape a submodule link's class like the othersBryce Kwon-6/+6
Open site and repository links through one helperBryce Kwon-24/+17
Write each query argument through one helperBryce Kwon-49/+30
Return repolink's delimiter without copying itBryce Kwon-1/+1
Drop the query-string form of every linkBryce Kwon-86/+31
cgit falls back to SCRIPT_NAME for virtual_root whenever cgitrc leaves it out, so the ?url= and ?r= forms only ever reached an error page raised while cgitrc was still being read. The page argument of cgit_add_hidden_formfields fed only the url field, so it is unused until its callers stop passing it.
Stop leaking the host on an embedded pageBryce Kwon-3/+3
Stop leaking the short hash of an object linkBryce Kwon-7/+4
Trim a snapshot name without reading out of boundsBryce Kwon-29/+12
For a url of .git, or an empty one, repo_basename stepped its index to the byte before its buffer, read it, and would have cleared it had it held a slash. Git's strbuf trims take the same steps safely, and they lift the 1024-byte cap that failed the page for a longer url.
Drop two includes nothing in their files usesBryce Kwon-3/+0
Give stdout back from a slot in one placeBryce Kwon-10/+11
Use the parser's INT_MAX for every snapshot formatBryce Kwon-5/+1
The snapshots parser already answers all with INT_MAX, so cgit.c needed no value of its own for the same mask.
Hand back the fallback branch rather than a copyBryce Kwon-13/+4
Drop dead checks and a repeated filter cleanupBryce Kwon-12/+7
build_snapshot_setting always returns a buffer, both commit-sort values are tested on their own, authenticate_post ends the process, and the filters are cleaned up by the atexit handler once cmd_main returns.
Cap the search with xstrndup aloneBryce Kwon-4/+1
Return nothing from two calls nobody checksBryce Kwon-9/+7
Drop reencode's fixed target and unread resultBryce Kwon-12/+11
Every call converted into the page encoding and dropped what came back, and a commit's encoding is always set by the time it runs.
Rename prepare_repo_env to open_repoBryce Kwon-2/+2
It opens the repository and loads its notes, while cgit_prepare_repo_env exports the CGIT_REPO_ variables, and the two names were one prefix apart.
Explain the notes setup in one commentBryce Kwon-4/+3
Leave the scan's summary to its headerBryce Kwon-7/+3
Drop the scan's redundant stats and one-pass loopBryce Kwon-12/+11
The description and cgitrc readers already return when the file will not open, a repository's description is never NULL before it is read, and the owner lookup never went round a second time.
Strip a scanned path's suffixes with git's helpersBryce Kwon-10/+7
Give the Lua-less filter init the Lua block's elseBryce Kwon-6/+4
Allocate the filters zeroed with xcallocBryce Kwon-7/+2
Drop the exec filter's close steps that do nothingBryce Kwon-7/+1
A filter is only closed after an open has forked it, so its pid is a child's, and every open writes its arguments into argv afresh.
Format the cache listing's times where it printsBryce Kwon-17/+6
Close the cache's descriptors through one helperBryce Kwon-33/+15
Drop the cache's checks for arguments never NULLBryce Kwon-14/+0
The cache root always holds a default or a copy, the key comes from a strbuf, and every string hashed is the same or a macro expansion.
Let scan_tree choose the project list itselfBryce Kwon-15/+8
Three callers wrote out the same choice, and the header already says a scan visits only the listed paths when a project list is set.
Drop the command line switches the query coversBryce Kwon-11/+0
--repo= only stored the name, so it never selected a repository, and --query= already reaches what the other four set, with the offset clamped the way a request's is.
Pick a filter's backend with skip_prefixBryce Kwon-32/+14
A two entry table and a prefix measured by hand did what two prefix tests do. A drive letter and an unknown prefix are read as before.
Write the cache's errors with fprintf like the restBryce Kwon-25/+10
Drop the defaults the memset already setsBryce Kwon-17/+0
prepare_context zeroes the whole context first, and the repository list is a global, so neither needs its zeros written out again.
Copy the encoding and subject with xmemdupzBryce Kwon-18/+2
substr was xmemdupz with a branch for an end before the start, and both callers find the end by searching forward from the start.
Mark the static pages in the command tableBryce Kwon-38/+16
The table already records what each page needs, and a second list of page names in cgit.c had to be kept in step with it by hand.
Drop the thunks that only forward to a rendererBryce Kwon-40/+10
Set the virtual root from SCRIPT_NAME up frontBryce Kwon-7/+5
The script name always holds a value, so the fallback after parsing fired whenever cgitrc left virtual-root unset. The root is now set with the other defaults, for cgitrc to replace. A die while cgitrc is read is the one change, and its page now links the root with the trailing slash every other page has. The environment's copy of the script name only fed this.
Open the empty page's clone table on its first urlBryce Kwon-9/+12
The page guessed from the two settings cgit_add_clone_urls reads, so a clone-url that expanded to nothing, or an empty one turning the global off, still drew a Clone heading over no rows. The summary already waits for a first url, and both now draw the heading the same way.
Name the right cap in the ref listings' commentBryce Kwon-1/+1
Return nothing from the ref row printersBryce Kwon-7/+4
Drop ref date checks that cannot fireBryce Kwon-3/+1
A ref whose object git cannot parse never joins the list, and a commit's info is allocated even when its buffer cannot be read.
Drop tag page checks that cannot fireBryce Kwon-11/+7
parse_object only hands back a tag it has parsed, and an ident is split into a name and an address together or not at all, so a tagger always has an address, if only <>.
Write the feed's own url onceBryce Kwon-2/+2
Let cgit_pageurl join a feed entry's commit idBryce Kwon-10/+2
Drop rev settings the feed's walk never readsBryce Kwon-4/+0
Strip a snapshot name's suffixes onceBryce Kwon-31/+21