OSDN Git Service

mailinfo: handle_commit_msg() shouldn't be called after finding patchbreak
authorJunio C Hamano <gitster@pobox.com>
Wed, 14 Oct 2015 23:16:33 +0000 (16:16 -0700)
committerJunio C Hamano <gitster@pobox.com>
Wed, 21 Oct 2015 22:57:17 +0000 (15:57 -0700)
commit4933910ab7a74ebcf13342726d7f055ee35a8f7c
tree5ae556a733f00e9d47eed4d914dc18ffe6ed0309
parent8e919277e07c5056021e3ec746693e5cd0496a5b
mailinfo: handle_commit_msg() shouldn't be called after finding patchbreak

There is a strange "if (!mi->cmitmsg) return 0" at the very beginning
of handle_commit_msg(), but the condition should never trigger, because:

 * The only place cmitmsg is set to NULL is after this function sees
   a patch break, closes the FILE * to write the commit log message
   and returns 1.  This function returns non-zero only from that
   codepath.

 * The caller of this function, upon seeing a non-zero return,
   increments filter_stage, starts treating the input as patch text
   and will never call handle_commit_msg() again.

Replace it with an assert(!mi->filter_stage) to ensure the above
observation will stay to be true.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/mailinfo.c