projects
/
git.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make "diff-tree" have similar behaviour as "ls-tree" wrt line termination.
[git.git]
/
checkout-cache.c
diff --git
a/checkout-cache.c
b/checkout-cache.c
index
73a1a8d
..
8d5e4cd
100644
(file)
--- a/
checkout-cache.c
+++ b/
checkout-cache.c
@@
-74,34
+74,33
@@
static int write_entry(struct cache_entry *ce)
new = read_sha1_file(ce->sha1, type, &size);
if (!new || strcmp(type, "blob")) {
new = read_sha1_file(ce->sha1, type, &size);
if (!new || strcmp(type, "blob")) {
-
fprintf(stderr, "checkout-cache: unable to read sha1 file of %s (%s)\n
",
+
return error("checkout-cache: unable to read sha1 file of %s (%s)
",
ce->name, sha1_to_hex(ce->sha1));
ce->name, sha1_to_hex(ce->sha1));
- return -1;
}
}
- fd = create_file(ce->name,
ce->st_mode
);
+ fd = create_file(ce->name,
ntohl(ce->ce_mode)
);
if (fd < 0) {
if (fd < 0) {
- fprintf(stderr, "checkout-cache: unable to create %s (%s)\n",
- ce->name, strerror(errno));
free(new);
free(new);
- return -1;
+ return error("checkout-cache: unable to create %s (%s)",
+ ce->name, strerror(errno));
}
wrote = write(fd, new, size);
close(fd);
free(new);
}
wrote = write(fd, new, size);
close(fd);
free(new);
- if (wrote == size)
- return 0;
- fprintf(stderr, "checkout-cache: unable to write %s\n", ce->name);
- return -1;
+ if (wrote != size)
+ return error("checkout-cache: unable to write %s", ce->name);
+ return 0;
}
static int checkout_entry(struct cache_entry *ce)
{
}
static int checkout_entry(struct cache_entry *ce)
{
- if (!force) {
- struct stat st;
+ struct stat st;
- if (!stat(ce->name, &st)) {
- unsigned changed = cache_match_stat(ce, &st);
- if (changed && !quiet)
+ if (!stat(ce->name, &st)) {
+ unsigned changed = cache_match_stat(ce, &st);
+ if (!changed)
+ return 0;
+ if (!force) {
+ if (!quiet)
fprintf(stderr, "checkout-cache: %s already exists\n", ce->name);
return 0;
}
fprintf(stderr, "checkout-cache: %s already exists\n", ce->name);
return 0;
}
@@
-137,8
+136,7
@@
int main(int argc, char **argv)
int i, force_filename = 0;
if (read_cache() < 0) {
int i, force_filename = 0;
if (read_cache() < 0) {
- fprintf(stderr, "Invalid cache\n");
- exit(1);
+ die("invalid cache");
}
for (i = 1; i < argc; i++) {
}
for (i = 1; i < argc; i++) {