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