The log parser was only ever matching the last log record due to
calling strtoul on ">
1136091609" rather than "
1136091609". Also
once a match for '@' has been found after the name of the ref there
is no point in looking for another '@' within the remaining text.
Signed-off-by: Junio C Hamano <junkio@cox.net>
c++;
if (c == logend || *c == '\n')
die("Log %s is corrupt.", logfile);
- date = strtoul(c, NULL, 10);
+ date = strtoul(c + 1, NULL, 10);
if (date <= at_time) {
if (get_sha1_hex(rec + 41, sha1))
die("Log %s is corrupt.", logfile);
at_time = approxidate(date_spec);
free(date_spec);
len = at_mark;
+ break;
}
}