Merge branch 'master' into next

* master:
  grep: read patterns from stdin with -f -
  gitweb: Always call parse_date with timezone parameter
  bisect: explain the rationale behind 125
This commit is contained in:
Junio C Hamano
2011-03-19 23:43:13 -07:00
4 changed files with 17 additions and 6 deletions

View File

@@ -241,7 +241,12 @@ exit(3) manual page), as the value is chopped with "& 0377".
The special exit code 125 should be used when the current source code The special exit code 125 should be used when the current source code
cannot be tested. If the script exits with this code, the current cannot be tested. If the script exits with this code, the current
revision will be skipped (see `git bisect skip` above). revision will be skipped (see `git bisect skip` above). 125 was chosen
as the highest sensible value to use for this purpose, because 126 and 127
are used by POSIX shells to signal specific error status (127 is for
command not found, 126 is for command found but not executable---these
details do not matter, as they are normal errors in the script, as far as
"bisect run" is concerned).
You may often find that during a bisect session you want to have You may often find that during a bisect session you want to have
temporary modifications (e.g. s/#define DEBUG 0/#define DEBUG 1/ in a temporary modifications (e.g. s/#define DEBUG 0/#define DEBUG 1/ in a

View File

@@ -659,11 +659,12 @@ static int context_callback(const struct option *opt, const char *arg,
static int file_callback(const struct option *opt, const char *arg, int unset) static int file_callback(const struct option *opt, const char *arg, int unset)
{ {
struct grep_opt *grep_opt = opt->value; struct grep_opt *grep_opt = opt->value;
int from_stdin = !strcmp(arg, "-");
FILE *patterns; FILE *patterns;
int lno = 0; int lno = 0;
struct strbuf sb = STRBUF_INIT; struct strbuf sb = STRBUF_INIT;
patterns = fopen(arg, "r"); patterns = from_stdin ? stdin : fopen(arg, "r");
if (!patterns) if (!patterns)
die_errno("cannot open '%s'", arg); die_errno("cannot open '%s'", arg);
while (strbuf_getline(&sb, patterns, '\n') == 0) { while (strbuf_getline(&sb, patterns, '\n') == 0) {
@@ -677,7 +678,8 @@ static int file_callback(const struct option *opt, const char *arg, int unset)
s = strbuf_detach(&sb, &len); s = strbuf_detach(&sb, &len);
append_grep_pat(grep_opt, s, len, arg, ++lno, GREP_PATTERN); append_grep_pat(grep_opt, s, len, arg, ++lno, GREP_PATTERN);
} }
fclose(patterns); if (!from_stdin)
fclose(patterns);
strbuf_release(&sb); strbuf_release(&sb);
return 0; return 0;
} }

View File

@@ -4906,7 +4906,6 @@ sub git_log_body {
next if !%co; next if !%co;
my $commit = $co{'id'}; my $commit = $co{'id'};
my $ref = format_ref_marker($refs, $commit); my $ref = format_ref_marker($refs, $commit);
my %ad = parse_date($co{'author_epoch'});
git_print_header_div('commit', git_print_header_div('commit',
"<span class=\"age\">$co{'age_string'}</span>" . "<span class=\"age\">$co{'age_string'}</span>" .
esc_html($co{'title'}) . $ref, esc_html($co{'title'}) . $ref,
@@ -7064,7 +7063,7 @@ sub git_feed {
if (defined($commitlist[0])) { if (defined($commitlist[0])) {
%latest_commit = %{$commitlist[0]}; %latest_commit = %{$commitlist[0]};
my $latest_epoch = $latest_commit{'committer_epoch'}; my $latest_epoch = $latest_commit{'committer_epoch'};
%latest_date = parse_date($latest_epoch); %latest_date = parse_date($latest_epoch, $latest_commit{'comitter_tz'});
my $if_modified = $cgi->http('IF_MODIFIED_SINCE'); my $if_modified = $cgi->http('IF_MODIFIED_SINCE');
if (defined $if_modified) { if (defined $if_modified) {
my $since; my $since;
@@ -7195,7 +7194,7 @@ XML
if (($i >= 20) && ((time - $co{'author_epoch'}) > 48*60*60)) { if (($i >= 20) && ((time - $co{'author_epoch'}) > 48*60*60)) {
last; last;
} }
my %cd = parse_date($co{'author_epoch'}); my %cd = parse_date($co{'author_epoch'}, $co{'author_tz'});
# get list of changed files # get list of changed files
open my $fd, "-|", git_cmd(), "diff-tree", '-r', @diff_opts, open my $fd, "-|", git_cmd(), "diff-tree", '-r', @diff_opts,

View File

@@ -303,6 +303,11 @@ test_expect_success 'grep -f, ignore empty lines' '
test_cmp expected actual test_cmp expected actual
' '
test_expect_success 'grep -f, ignore empty lines, read patterns from stdin' '
git grep -f - <patterns >actual &&
test_cmp expected actual
'
cat >expected <<EOF cat >expected <<EOF
y:y yy y:y yy
-- --