xref: /OK3568_Linux_fs/buildroot/package/patch/0001-Fix-segfault-with-mangled-rename-patch.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunFrom f290f48a621867084884bfff87f8093c15195e6a Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Andreas Gruenbacher <agruen@gnu.org>
3*4882a593SmuzhiyunDate: Mon, 12 Feb 2018 16:48:24 +0100
4*4882a593SmuzhiyunSubject: [PATCH] Fix segfault with mangled rename patch
5*4882a593Smuzhiyun
6*4882a593Smuzhiyunhttp://savannah.gnu.org/bugs/?53132
7*4882a593Smuzhiyun* src/pch.c (intuit_diff_type): Ensure that two filenames are specified
8*4882a593Smuzhiyunfor renames and copies (fix the existing check).
9*4882a593Smuzhiyun
10*4882a593SmuzhiyunSigned-off-by: Baruch Siach <baruch@tkos.co.il>
11*4882a593Smuzhiyun---
12*4882a593SmuzhiyunPatch status: upstream commit f290f48a6218
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun src/pch.c | 3 ++-
15*4882a593Smuzhiyun 1 file changed, 2 insertions(+), 1 deletion(-)
16*4882a593Smuzhiyun
17*4882a593Smuzhiyundiff --git a/src/pch.c b/src/pch.c
18*4882a593Smuzhiyunindex ff9ed2cebb8a..bc6278c4032c 100644
19*4882a593Smuzhiyun--- a/src/pch.c
20*4882a593Smuzhiyun+++ b/src/pch.c
21*4882a593Smuzhiyun@@ -974,7 +974,8 @@ intuit_diff_type (bool need_header, mode_t *p_file_type)
22*4882a593Smuzhiyun     if ((pch_rename () || pch_copy ())
23*4882a593Smuzhiyun 	&& ! inname
24*4882a593Smuzhiyun 	&& ! ((i == OLD || i == NEW) &&
25*4882a593Smuzhiyun-	      p_name[! reverse] &&
26*4882a593Smuzhiyun+	      p_name[reverse] && p_name[! reverse] &&
27*4882a593Smuzhiyun+	      name_is_valid (p_name[reverse]) &&
28*4882a593Smuzhiyun 	      name_is_valid (p_name[! reverse])))
29*4882a593Smuzhiyun       {
30*4882a593Smuzhiyun 	say ("Cannot %s file without two valid file names\n", pch_rename () ? "rename" : "copy");
31*4882a593Smuzhiyun--
32*4882a593Smuzhiyun2.16.1
33*4882a593Smuzhiyun
34