aboutsummaryrefslogtreecommitdiffstats
path: root/tools/patch/patches/020-CVE-2018-6952.patch
diff options
context:
space:
mode:
Diffstat (limited to 'tools/patch/patches/020-CVE-2018-6952.patch')
-rw-r--r--tools/patch/patches/020-CVE-2018-6952.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/tools/patch/patches/020-CVE-2018-6952.patch b/tools/patch/patches/020-CVE-2018-6952.patch
new file mode 100644
index 0000000000..e3e4020e50
--- /dev/null
+++ b/tools/patch/patches/020-CVE-2018-6952.patch
@@ -0,0 +1,30 @@
+From daa51e492049d9fe3ac049165ec19641bf19cd7f 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 8150493..6994ab2 100644
+--- a/src/pch.c
++++ b/src/pch.c
+@@ -2114,7 +2114,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;
+--
+2.19.1
+