提交 868bc068 编写于 作者: M Miklos Vajna 提交者: Junio C Hamano

gitweb: new cgi parameter: opt

Currently the only supported value is '--no-merges' for the 'rss', 'atom',
'log', 'shortlog' and 'history' actions, but it can be easily extended to allow
other parameters for other actions.
Signed-off-by: NMiklos Vajna <vmiklos@frugalware.org>
Signed-off-by: NJunio C Hamano <gitster@pobox.com>
上级 248c648a
......@@ -386,6 +386,23 @@ sub check_export_ok {
}
}
my %allowed_options = (
"--no-merges" => [ qw(rss atom log shortlog history) ],
);
our @extra_options = $cgi->param('opt');
if (defined @extra_options) {
foreach(@extra_options)
{
if (not grep(/^$_$/, keys %allowed_options)) {
die_error(undef, "Invalid option parameter");
}
if (not grep(/^$action$/, @{$allowed_options{$_}})) {
die_error(undef, "Invalid option parameter for this action");
}
}
}
our $hash_parent_base = $cgi->param('hpb');
if (defined $hash_parent_base) {
if (!validate_refname($hash_parent_base)) {
......@@ -537,6 +554,7 @@ (%)
action => "a",
file_name => "f",
file_parent => "fp",
extra_options => "opt",
hash => "h",
hash_parent => "hp",
hash_base => "hb",
......@@ -1773,6 +1791,7 @@ sub parse_commits {
($arg ? ($arg) : ()),
("--max-count=" . $maxcount),
("--skip=" . $skip),
@extra_options,
$commit_id,
"--",
($filename ? ($filename) : ())
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册