commit 9c986353e420ead6e706262bf204d6e03322c300
Author: Andreas Gruenbacher <agruen@gnu.org>
Date:   Fri Aug 17 13:35:40 2018 +0200

    Fix swapping fake lines in pch_swap
    
    * src/pch.c (pch_swap): Fix swapping p_bfake and p_efake when there is a
    blank line in the middle of a context-diff hunk: that empty line stays
    in the middle of the hunk and isn't swapped.
    
    Fixes: https://savannah.gnu.org/bugs/index.php?53133

diff --git a/src/pch.c b/src/pch.c
index e92bc64..a500ad9 100644
--- a/src/pch.c
+++ b/src/pch.c
@@ -2122,7 +2122,7 @@ pch_swap (void)
     }
     if (p_efake >= 0) {			/* fix non-freeable ptr range */
 	if (p_efake <= i)
-	    n = p_end - i + 1;
+	    n = p_end - p_ptrn_lines;
 	else
 	    n = -i;
 	p_efake += n;
