Compare commits
7 Commits
Author | SHA1 | Date | |
---|---|---|---|
ca182053c7 | |||
1ecc18e4fc | |||
3a75f67401 | |||
e921fb82cf | |||
e93ec6f9d8 | |||
ae4a35261d | |||
ee3d299e93 |
2
Makefile
2
Makefile
@ -55,7 +55,7 @@ all:
|
|||||||
# Define USE_STDEV below if you want git to care about the underlying device
|
# Define USE_STDEV below if you want git to care about the underlying device
|
||||||
# change being considered an inode change from the update-cache perspective.
|
# change being considered an inode change from the update-cache perspective.
|
||||||
|
|
||||||
GIT_VERSION = 1.0.10
|
GIT_VERSION = 1.0.13
|
||||||
|
|
||||||
# CFLAGS and LDFLAGS are for the users to override from the command line.
|
# CFLAGS and LDFLAGS are for the users to override from the command line.
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
* passed around in one int (high 16-bit for merge and low 16-bit
|
* passed around in one int (high 16-bit for merge and low 16-bit
|
||||||
* for break).
|
* for break).
|
||||||
*/
|
*/
|
||||||
#define MAX_SCORE 60000
|
#define MAX_SCORE 60000.0
|
||||||
#define DEFAULT_RENAME_SCORE 30000 /* rename/copy similarity minimum (50%) */
|
#define DEFAULT_RENAME_SCORE 30000 /* rename/copy similarity minimum (50%) */
|
||||||
#define DEFAULT_BREAK_SCORE 30000 /* minimum for break to happen (50%)*/
|
#define DEFAULT_BREAK_SCORE 30000 /* minimum for break to happen (50%)*/
|
||||||
#define DEFAULT_MERGE_SCORE 48000 /* maximum for break-merge to happen (80%)*/
|
#define DEFAULT_MERGE_SCORE 48000 /* maximum for break-merge to happen (80%)*/
|
||||||
|
9
entry.c
9
entry.c
@ -70,7 +70,6 @@ static int write_entry(struct cache_entry *ce, const char *path, struct checkout
|
|||||||
unsigned long size;
|
unsigned long size;
|
||||||
long wrote;
|
long wrote;
|
||||||
char type[20];
|
char type[20];
|
||||||
char target[1024];
|
|
||||||
|
|
||||||
new = read_sha1_file(ce->sha1, type, &size);
|
new = read_sha1_file(ce->sha1, type, &size);
|
||||||
if (!new || strcmp(type, "blob")) {
|
if (!new || strcmp(type, "blob")) {
|
||||||
@ -94,12 +93,10 @@ static int write_entry(struct cache_entry *ce, const char *path, struct checkout
|
|||||||
return error("git-checkout-index: unable to write file %s", path);
|
return error("git-checkout-index: unable to write file %s", path);
|
||||||
break;
|
break;
|
||||||
case S_IFLNK:
|
case S_IFLNK:
|
||||||
memcpy(target, new, size);
|
if (symlink(new, path)) {
|
||||||
target[size] = '\0';
|
|
||||||
if (symlink(target, path)) {
|
|
||||||
free(new);
|
free(new);
|
||||||
return error("git-checkout-index: unable to create symlink %s (%s)",
|
return error("git-checkout-index: unable to create "
|
||||||
path, strerror(errno));
|
"symlink %s (%s)", path, strerror(errno));
|
||||||
}
|
}
|
||||||
free(new);
|
free(new);
|
||||||
break;
|
break;
|
||||||
|
@ -262,9 +262,6 @@ static void filter_refs(struct ref **refs, int nr_match, char **match)
|
|||||||
{
|
{
|
||||||
struct ref *prev, *current, *next;
|
struct ref *prev, *current, *next;
|
||||||
|
|
||||||
if (!nr_match)
|
|
||||||
return;
|
|
||||||
|
|
||||||
for (prev = NULL, current = *refs; current; current = next) {
|
for (prev = NULL, current = *refs; current; current = next) {
|
||||||
next = current->next;
|
next = current->next;
|
||||||
if ((!memcmp(current->name, "refs/", 5) &&
|
if ((!memcmp(current->name, "refs/", 5) &&
|
||||||
|
16
sha1_file.c
16
sha1_file.c
@ -321,16 +321,12 @@ struct packed_git *packed_git;
|
|||||||
static int check_packed_git_idx(const char *path, unsigned long *idx_size_,
|
static int check_packed_git_idx(const char *path, unsigned long *idx_size_,
|
||||||
void **idx_map_)
|
void **idx_map_)
|
||||||
{
|
{
|
||||||
SHA_CTX ctx;
|
|
||||||
unsigned char sha1[20];
|
|
||||||
void *idx_map;
|
void *idx_map;
|
||||||
unsigned int *index;
|
unsigned int *index;
|
||||||
unsigned long idx_size;
|
unsigned long idx_size;
|
||||||
int nr, i;
|
int nr, i;
|
||||||
int fd;
|
int fd = open(path, O_RDONLY);
|
||||||
struct stat st;
|
struct stat st;
|
||||||
|
|
||||||
fd = open(path, O_RDONLY);
|
|
||||||
if (fd < 0)
|
if (fd < 0)
|
||||||
return -1;
|
return -1;
|
||||||
if (fstat(fd, &st)) {
|
if (fstat(fd, &st)) {
|
||||||
@ -368,16 +364,6 @@ static int check_packed_git_idx(const char *path, unsigned long *idx_size_,
|
|||||||
if (idx_size != 4*256 + nr * 24 + 20 + 20)
|
if (idx_size != 4*256 + nr * 24 + 20 + 20)
|
||||||
return error("wrong index file size");
|
return error("wrong index file size");
|
||||||
|
|
||||||
/*
|
|
||||||
* File checksum.
|
|
||||||
*/
|
|
||||||
SHA1_Init(&ctx);
|
|
||||||
SHA1_Update(&ctx, idx_map, idx_size-20);
|
|
||||||
SHA1_Final(sha1, &ctx);
|
|
||||||
|
|
||||||
if (memcmp(sha1, idx_map + idx_size - 20, 20))
|
|
||||||
return error("index checksum mismatch");
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user