Merge branch 'jc/reflog' into lj/refs
* jc/reflog: sha1_name.c: avoid compilation warnings. ref-log: allow ref@{count} syntax.
This commit is contained in:
6
refs.c
6
refs.c
@ -806,7 +806,7 @@ int write_ref_sha1(struct ref_lock *lock,
|
||||
return 0;
|
||||
}
|
||||
|
||||
int read_ref_at(const char *ref, unsigned long at_time, unsigned char *sha1)
|
||||
int read_ref_at(const char *ref, unsigned long at_time, int cnt, unsigned char *sha1)
|
||||
{
|
||||
const char *logfile, *logdata, *logend, *rec, *lastgt, *lastrec;
|
||||
char *tz_c;
|
||||
@ -839,7 +839,7 @@ int read_ref_at(const char *ref, unsigned long at_time, unsigned char *sha1)
|
||||
if (!lastgt)
|
||||
die("Log %s is corrupt.", logfile);
|
||||
date = strtoul(lastgt + 1, &tz_c, 10);
|
||||
if (date <= at_time) {
|
||||
if (date <= at_time || cnt == 0) {
|
||||
if (lastrec) {
|
||||
if (get_sha1_hex(lastrec, logged_sha1))
|
||||
die("Log %s is corrupt.", logfile);
|
||||
@ -870,6 +870,8 @@ int read_ref_at(const char *ref, unsigned long at_time, unsigned char *sha1)
|
||||
return 0;
|
||||
}
|
||||
lastrec = rec;
|
||||
if (cnt > 0)
|
||||
cnt--;
|
||||
}
|
||||
|
||||
rec = logdata;
|
||||
|
Reference in New Issue
Block a user