aboutsummaryrefslogtreecommitdiffstats
path: root/main/patch/CVE-2018-6952.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/patch/CVE-2018-6952.patch')
-rw-r--r--main/patch/CVE-2018-6952.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/main/patch/CVE-2018-6952.patch b/main/patch/CVE-2018-6952.patch
new file mode 100644
index 0000000000..5f1511c7b1
--- /dev/null
+++ b/main/patch/CVE-2018-6952.patch
@@ -0,0 +1,27 @@
+From 9c986353e420ead6e706262bf204d6e03322c300 Mon Sep 17 00:00:00 2001
+From: Andreas Gruenbacher <agruen@gnu.org>
+Date: Fri, 17 Aug 2018 13:35:40 +0200
+Subject: [PATCH] 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
+---
+ src/pch.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+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;