commit b95c53dfde0b4b71d68386b5a6e362877bba1d43 from: Omar Polo date: Sat Mar 12 16:01:09 2022 UTC apply_patch: move sanity check early in recv_patch commit - ca6444c5b3830627626458222ef3f16852e3505f commit + b95c53dfde0b4b71d68386b5a6e362877bba1d43 blob - 6cc85331d4129d6f7dfec267d04e16173c9608a6 blob + 957d639a49780d6a41491cd6e9117b1783a6b61f --- lib/patch.c +++ lib/patch.c @@ -172,6 +172,10 @@ recv_patch(struct imsgbuf *ibuf, int *done, struct got err = got_error_from_errno("strdup"); goto done; } + if (p->old == NULL && p->new == NULL) { + err = got_error(GOT_ERR_PATCH_MALFORMED); + goto done; + } imsg_free(&imsg); @@ -396,9 +400,6 @@ apply_patch(struct got_worktree *worktree, struct got_ TAILQ_INIT(&paths); - if (p->old == NULL && p->new == NULL) - return got_error(GOT_ERR_PATCH_MALFORMED); - err = got_worktree_resolve_path(&path, worktree, p->new != NULL ? p->new : p->old); if (err)