Merge branch 'master' of git://repo.or.cz/git into devel

This commit is contained in:
Johannes Schindelin
2009-03-19 00:56:54 +01:00
136 changed files with 2993 additions and 885 deletions

View File

@@ -5,6 +5,8 @@ void *gitmemmem(const void *haystack, size_t haystack_len,
{
const char *begin = haystack;
const char *last_possible = begin + haystack_len - needle_len;
const char *tail = needle;
char point;
/*
* The first occurrence of the empty string is deemed to occur at
@@ -20,8 +22,9 @@ void *gitmemmem(const void *haystack, size_t haystack_len,
if (haystack_len < needle_len)
return NULL;
point = *tail++;
for (; begin <= last_possible; begin++) {
if (!memcmp(begin, needle, needle_len))
if (*begin == point && !memcmp(begin + 1, tail, needle_len - 1))
return (void *)begin;
}