Merge branch 'nd/war-on-nul-in-commit'
* nd/war-on-nul-in-commit: commit_tree(): refuse commit messages that contain NULs Convert commit_tree() to take strbuf as message merge: abort if fails to commit Conflicts: builtin/commit.c commit.c commit.h
This commit is contained in:
@ -530,7 +530,7 @@ static int merge_from_diffs(struct notes_merge_options *o,
|
||||
}
|
||||
|
||||
void create_notes_commit(struct notes_tree *t, struct commit_list *parents,
|
||||
const char *msg, unsigned char *result_sha1)
|
||||
const struct strbuf *msg, unsigned char *result_sha1)
|
||||
{
|
||||
unsigned char tree_sha1[20];
|
||||
|
||||
@ -668,7 +668,7 @@ int notes_merge(struct notes_merge_options *o,
|
||||
struct commit_list *parents = NULL;
|
||||
commit_list_insert(remote, &parents); /* LIFO order */
|
||||
commit_list_insert(local, &parents);
|
||||
create_notes_commit(local_tree, parents, o->commit_msg.buf,
|
||||
create_notes_commit(local_tree, parents, &o->commit_msg,
|
||||
result_sha1);
|
||||
}
|
||||
|
||||
@ -695,7 +695,8 @@ int notes_merge_commit(struct notes_merge_options *o,
|
||||
struct dir_struct dir;
|
||||
char *path = xstrdup(git_path(NOTES_MERGE_WORKTREE "/"));
|
||||
int path_len = strlen(path), i;
|
||||
const char *msg = strstr(partial_commit->buffer, "\n\n");
|
||||
char *msg = strstr(partial_commit->buffer, "\n\n");
|
||||
struct strbuf sb_msg = STRBUF_INIT;
|
||||
|
||||
if (o->verbosity >= 3)
|
||||
printf("Committing notes in notes merge worktree at %.*s\n",
|
||||
@ -733,7 +734,8 @@ int notes_merge_commit(struct notes_merge_options *o,
|
||||
sha1_to_hex(obj_sha1), sha1_to_hex(blob_sha1));
|
||||
}
|
||||
|
||||
create_notes_commit(partial_tree, partial_commit->parents, msg,
|
||||
strbuf_attach(&sb_msg, msg, strlen(msg), strlen(msg) + 1);
|
||||
create_notes_commit(partial_tree, partial_commit->parents, &sb_msg,
|
||||
result_sha1);
|
||||
if (o->verbosity >= 4)
|
||||
printf("Finalized notes merge commit: %s\n",
|
||||
|
Reference in New Issue
Block a user