aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Potapov <dpotapov@gmail.com>2008-10-05 06:14:40 +0400
committerShawn O. Pearce <spearce@spearce.org>2008-10-06 07:19:36 -0700
commit048f2762007d022defceb6850a44bc1bd5ccebf7 (patch)
treeb24ddcc05a34b4bb45331519ce76a80a62de0f51
parent52e8370bc7a71366b664ece0a9ec0b79d673a356 (diff)
downloadgit-048f2762007d022defceb6850a44bc1bd5ccebf7.tar.gz
git-048f2762007d022defceb6850a44bc1bd5ccebf7.tar.xz
do not segfault if make_cache_entry failed
Signed-off-by: Dmitry Potapov <dpotapov@gmail.com> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
-rw-r--r--builtin-apply.c2
-rw-r--r--builtin-checkout.c2
-rw-r--r--builtin-reset.c3
3 files changed, 7 insertions, 0 deletions
diff --git a/builtin-apply.c b/builtin-apply.c
index e2c611bf9..342f2fe5e 100644
--- a/builtin-apply.c
+++ b/builtin-apply.c
@@ -2586,6 +2586,8 @@ static void build_fake_ancestor(struct patch *list, const char *filename)
sha1_ptr = sha1;
ce = make_cache_entry(patch->old_mode, sha1_ptr, name, 0, 0);
+ if (!ce)
+ die("make_cache_entry failed for path '%s'", name);
if (add_index_entry(&result, ce, ADD_CACHE_OK_TO_ADD))
die ("Could not add %s to temporary index", name);
}
diff --git a/builtin-checkout.c b/builtin-checkout.c
index b572b3bf6..3762f71aa 100644
--- a/builtin-checkout.c
+++ b/builtin-checkout.c
@@ -206,6 +206,8 @@ static int checkout_merged(int pos, struct checkout *state)
ce = make_cache_entry(create_ce_mode(active_cache[pos+1]->ce_mode),
sha1,
path, 2, 0);
+ if (!ce)
+ die("make_cache_entry failed for path '%s'", path);
status = checkout_entry(ce, state, NULL);
return status;
}
diff --git a/builtin-reset.c b/builtin-reset.c
index c24c21909..16e6bb20f 100644
--- a/builtin-reset.c
+++ b/builtin-reset.c
@@ -121,6 +121,9 @@ static void update_index_from_diff(struct diff_queue_struct *q,
struct cache_entry *ce;
ce = make_cache_entry(one->mode, one->sha1, one->path,
0, 0);
+ if (!ce)
+ die("make_cache_entry failed for path '%s'",
+ one->path);
add_cache_entry(ce, ADD_CACHE_OK_TO_ADD |
ADD_CACHE_OK_TO_REPLACE);
} else