about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2012-09-27ui-snapshot: pass -n to gzip, to suppress timestampJason A. Donenfeld-8/+10
Since cgit snapshots of tags are often used for releases, we don't want the rarely used feature of the gzip compressor that includes an embedded timestamp into the archive, since this makes each tarball of the same (potentially signed) tag different. This commit refactors the archive handling code a bit so that each different format is able to run with an arbitrary argv for the filter.
2012-07-12Update copyright headers to have latest dates.Jason A. Donenfeld-2/+3
2012-07-12ui-repolist: Case insensitive sorting and age sortJason A. Donenfeld-5/+37
Add two options, one for doing the ordinary name sorts in a case-insensitive manner, and another for choosing to sort repos in each section by age instead of by name.
2012-07-12scan-tree: Support gitweb.category.Jason A. Donenfeld-0/+14
Use gitweb.category from git config to determine repo's section, if option is enabled.
2012-07-12scan-tree: Support gitweb.description.Jason A. Donenfeld-7/+28
Use gitweb.description instead of description file to determine description, if option is enabled.
2012-03-20css: only use div#cgitFerry Huberts-4/+1
Don't bother with 'body' and 'div#cgit form', since everything is wrapped in 'div#cgit' already. Removing these two types makes embedding even easier. Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
2012-03-18Merge branch 'fh/mimetypes'Lars Hjemli-1/+65
2012-03-18Merge branch 'jp/defbranch'Lars Hjemli-4/+18
2012-03-18Merge branch 'lh/module-links'Lars Hjemli-15/+85
2012-03-18Merge branch 'stable'Lars Hjemli-3/+31
2012-03-18css: force text color to black on decorationsFerry Huberts-0/+4
improves readability when embedding into a page that has the text color set to a different color Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
2012-03-18css: vertically align the cgit logo imageFerry Huberts-0/+1
When embedding cgit in other pages, the logo alignment needs to be specified to avoid any css rules from the embedding page to make the page look bad. Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
2012-03-18css: prefix all styles with div#cgitFerry Huberts-169/+169
to facilitate easier embedding Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
2012-03-18filters/syntax-highlighting.sh: work around highlight --force bugFerry Huberts-0/+17
2012-03-18filters/highlight.sh: manually support highlight version 2 and 3Ferry Huberts-0/+11
2012-03-18tests: properly quote arguments to printfFerry Huberts-1/+1
v2: incorporate remarks of Lukas Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
2012-03-18tests: handle paths with whitespaceFerry Huberts-2/+2
v2: incorporate remarks of Lukas Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
2012-03-18Merge branch 'stable'Lars Hjemli-1/+1
2012-03-18CGIT-0.9.0.3Lars Hjemli-1/+1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2012-03-18Merge branch 'stable'Lars Hjemli-7/+5
2012-03-18segfault fix on some bogus requestsEric Wong-2/+2
ctx.qry.head can be NULL in some cases due to bad requests by weird bots. I managed to reproduce with: PATH_INFO=/repo.git/shop.php QUERY_STRING=id= Signed-off-by: Eric Wong <normalperson@yhbt.net>
2012-03-18use correct type for sizeofJamie Couture-1/+1
**L would have worked well too. Depending on the distribution sizeof *L may return 8 instead of 4. **L is preferable, but since we don't expect this datatype to change very often, sizeof int is less subtle and easier to understand. Signed-off-by: Jamie Couture <jamie.couture@gmail.com>
2012-01-08ui-ssdiff.c: correct length check for LCS tableEric Wong-4/+2
Each individual string may be too long for its respective dimension of the LCS table. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2012-01-03Merge branch 'stable'Lars Hjemli-1/+1
2012-01-03Fix segmentation fault in empty repositoryJohn Keeping-1/+1
When a repository is empty, the ATOM feed link is written in the header, but this involves formatting ctx->qry.head which is NULL in this case. With glibc, vsnprintf formats "%s" with a NULL input as "(null)" but on Solaris this results in a segmentation fault. Since we don't have a meaningful head for the atom feed in an empty repository, it's simplest not to write out the link element at all. Signed-off-by: John Keeping <john@metanate.com>
2012-01-03Merge branch 'stable'Lars Hjemli-3/+3
2012-01-03Makefile: fetch git tarballs from http://hjemli.net/git/git/Lars Hjemli-1/+1
The git tarballs are currently not available from kernel.org, so for now the makefile will download autogenerated tarballs from cgit. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2012-01-03fix css color value and vertical-align valueNorberto Lopes-2/+2
2012-01-03ui-ssdiff.c: set correct diffmode in "control panel"Tim Chen-3/+1
When side-by-side-diffs=1 was set in cgitrc, specifying 'ss=0' in the querystring would not set the 'unified' option as active in the dropdown box used to select diffmode.
2012-01-03Merge branch 'stable'Lars Hjemli-17/+68
2012-01-03Fix diff mode switching when side-by-side-diffs=1Tim Chen-2/+3
When side-by-side-diffs=1 was set in cgitrc, specyfing 'ss=0' in the query- string would not switch to unified diffs. This patch fixes the issue by introducing a separate variable to track the occurrence of "ss" in the querystring.
2012-01-03ui-log.c: do not show remote heads if enable-remote-branches=0Georg Müller-0/+3
If remote branches are not enabled, the branches are still listed in the log view. This patch removes them if enable-remote-branches=0.
2012-01-03Add sort parameter to pager of repo listTobias Grimm-13/+19
When the repolist is paged, the page-links are missing the sort parameter, causing the initial page to be custom sorted, but any clicked page will then be with the default sort order again.
2012-01-03ui-ssdiff: move LCS table away from the stackJamie Couture-2/+43
Printing deferred line changes for files containing long lines would cause a segfault. - limit LCS table size: 128x128. - move LCS table to global context: avoid allocating/freeing memory for every deferred line change. Signed-off-by: Jamie Couture <jamie.couture@gmail.com>
2012-01-03shared.c: Only setenv() if value is non-nullLukas Fleischer-2/+2
Some setenv() implementations (e.g. the one in OpenBSD's stdlib) segfault if we pass a NULL value. Only set environment variables if the corresponding settings are defined to avoid this. Note that this is a minor behaviour change as environment variables were supposed to be set to an empty string if a setting was undefined. Given that this feature isn't part of any official release yet, there's no need to worry about backwards compatibility, really. Change the documentation accordingly. Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
2012-01-03shared.c: Remove unused "linux/limits.h" includeLukas Fleischer-1/+0
This isn't used anywhere and prevents the code from being compiled on other platforms, such as *BSD. Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
2011-07-22Merge branch 'stable'Lars Hjemli-5/+7
2011-07-22Fix potential XSS vulnerability in rename hintLukas Fleischer-4/+6
The file name displayed in the rename hint should be escaped to avoid XSS. Note that this vulnerability is only applicable when an attacker has gained push access to the repository. Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-07-22Remove dead initialization in cgit_parse_commit()Lukas Fleischer-1/+1
The value stored to "t" during its initialization gets overwritten in any case, so just leave it uninitialized. Spotted by clang-analyzer. Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-07-21Merge branch 'stable'Lars Hjemli-3/+3
2011-07-21CGIT 0.9.0.2Lars Hjemli-1/+1
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-07-21html.c: avoid out-of-bounds access for url_escape_tableEric Wong-2/+2
This fixes a segfault for me with with -O2 optimization on x86 with gcc (Debian 4.4.5-8) 4.4.5 I can reliably reproduce it with the following parameters when pointed to the git.git repository: PATH_INFO='/git-core.git/diff/' QUERY_STRING='id=2b93bfac0f5bcabbf60f174f4e7bfa9e318e64d5&id2=d6da71a9d16b8cf27f9d8f90692d3625c849cbc8' Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-07-21Merge branch 'stable'Lars Hjemli-0/+1
2011-07-21tests: fix failures when CDPATH is setFerry Huberts-0/+1
Some tests would otherwise fail because commands such as cd trash/repos/foo && git rev-list --reverse HEAD | head -1 would return 2 lines instead of 1: the 'cd' command also prints the path when CDPATH is set. Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-07-19ui-repolist.c: fallback to "master" if no default branch is specifiedLars Hjemli-1/+2
When looking for the modtime of a repo we used to rely on repo.defbranch having a value. This is no longer true so this patch provides a default value when needed. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-07-19ui_plain: automatically lookup mimetype when mimetype-file is setFerry Huberts-1/+65
For sites that do not want to configure mime types by hand but still want the correct mime type for 'plain' blobs, configuring a mime type file is made possible. This is handy since such a file is normally already provided (at least on Linux systems). Also, this reflects the gitweb option '$mimetypes_file' Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-07-19Makefile: fix oversight of not using $(DESTDIR) in uninstallFerry Huberts-3/+3
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-07-19commit-links.sh: improve regular expressionsFerry Huberts-2/+5
The default length for sha1 abbreviations in git is 7. A '#num' at the beginning of the commit message is now recognised, a ':#num' as well, etc.: a '#num' anywhere is now converted to a link. Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-20cgit.c: use resolve_ref() to guess_defbranch()Lars Hjemli-27/+7
The resolve_ref() function handles reading of git- and filesystem symbolic links (including proper whitespace trimming) and packed refs. There's no point in reimplementing this function in cgit. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
2011-06-20Only guess default branch when a repo page is requestedLars Hjemli-38/+34
There's no need to invoke guess_defbranch() for each repo during scan-path, since repo.defbranch is only used when repo content is being displayed. Also, some users prefer to register their projects manually in cgitrc but they got no benefit from the new repo.defbranch handling. This patch tries to rectify these issues by only invoking guess_defbranch() when needed, regardless of how the repo was registered. Signed-off-by: Lars Hjemli <hjemli@gmail.com>