Merge branch 'jc/sha1-name-find-fix'

* jc/sha1-name-find-fix:
  sha1_name.c: fix parsing of ":/token" syntax

Conflicts:
	sha1_name.c
This commit is contained in:
Junio C Hamano 2010-08-12 18:32:49 -07:00
Родитель ba6ca757bb f7bff00314
Коммит 3d04589758
1 изменённых файлов: 11 добавлений и 10 удалений

Просмотреть файл

@ -659,6 +659,16 @@ static int get_sha1_1(const char *name, int len, unsigned char *sha1)
return get_short_sha1(name, len, sha1, 0); return get_short_sha1(name, len, sha1, 0);
} }
/*
* This interprets names like ':/Initial revision of "git"' by searching
* through history and returning the first commit whose message starts
* the given regular expression.
*
* For future extension, ':/!' is reserved. If you want to match a message
* beginning with a '!', you have to repeat the exclamation mark.
*/
#define ONELINE_SEEN (1u<<20)
static int handle_one_ref(const char *path, static int handle_one_ref(const char *path,
const unsigned char *sha1, int flag, void *cb_data) const unsigned char *sha1, int flag, void *cb_data)
{ {
@ -674,19 +684,10 @@ static int handle_one_ref(const char *path,
if (object->type != OBJ_COMMIT) if (object->type != OBJ_COMMIT)
return 0; return 0;
insert_by_date((struct commit *)object, list); insert_by_date((struct commit *)object, list);
object->flags |= ONELINE_SEEN;
return 0; return 0;
} }
/*
* This interprets names like ':/Initial revision of "git"' by searching
* through history and returning the first commit whose message matches
* the given regular expression.
*
* For future extension, ':/!' is reserved. If you want to match a message
* beginning with a '!', you have to repeat the exclamation mark.
*/
#define ONELINE_SEEN (1u<<20)
static int get_sha1_oneline(const char *prefix, unsigned char *sha1) static int get_sha1_oneline(const char *prefix, unsigned char *sha1)
{ {
struct commit_list *list = NULL, *backup = NULL, *l; struct commit_list *list = NULL, *backup = NULL, *l;