Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
builtin-merge.c: allocate correct amount of memory
author
Brandon Casey
<casey@nrlssc.navy.mil>
Thu, 9 Oct 2008 00:07:54 +0000
(19:07 -0500)
committer
Shawn O. Pearce
<spearce@spearce.org>
Thu, 9 Oct 2008 15:13:29 +0000
(08:13 -0700)
Fix two memory allocation errors which allocate space for a pointer
rather than enough space for the structure itself.
This:
struct commit_list *parent = xmalloc(sizeof(struct commit_list *));
should have been this:
struct commit_list *parent = xmalloc(sizeof(struct commit_list));
But while we're at it, change the allocation to reference the
variable it is allocating memory for to try to prevent a similar
mistake, for example if the type is changed, in the future.
Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Acked-by: Miklos Vajna <vmiklos@frugalware.org>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
builtin-merge.c
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
fb74243
)
diff --git
a/builtin-merge.c
b/builtin-merge.c
index dcaf3681dc4433a0a258010f2b0a06fc26dc2212..d0bf1fc1edb5fc7783669e4086210a521a3ab6e3 100644
(file)
--- a/
builtin-merge.c
+++ b/
builtin-merge.c
@@
-651,12
+651,12
@@
static void add_strategies(const char *string, unsigned attr)
static int merge_trivial(void)
{
unsigned char result_tree[20], result_commit[20];
static int merge_trivial(void)
{
unsigned char result_tree[20], result_commit[20];
- struct commit_list *parent = xmalloc(sizeof(
struct commit_list *
));
+ struct commit_list *parent = xmalloc(sizeof(
*parent
));
write_tree_trivial(result_tree);
printf("Wonderful.\n");
parent->item = lookup_commit(head);
write_tree_trivial(result_tree);
printf("Wonderful.\n");
parent->item = lookup_commit(head);
- parent->next = xmalloc(sizeof(
struct commit_list *
));
+ parent->next = xmalloc(sizeof(
*parent->next
));
parent->next->item = remoteheads->item;
parent->next->next = NULL;
commit_tree(merge_msg.buf, result_tree, parent, result_commit);
parent->next->item = remoteheads->item;
parent->next->next = NULL;
commit_tree(merge_msg.buf, result_tree, parent, result_commit);