vim-patch:9.1.1615: diff format erroneously detected (#35276)

Problem:  diff format erroneously detected
          (Tomáš Janoušek)
Solution: Make the regex to detect normal diff format a bit stricter,
          while at it, fix wrong test content from patch v9.1.1606

fixes: vim/vim#17946

887b4981e7

Co-authored-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
zeertzjq
2025-08-10 07:27:53 +08:00
committed by GitHub
parent 77500c5ad5
commit f79430e2ce
2 changed files with 16 additions and 4 deletions

View File

@@ -2063,6 +2063,7 @@ local patterns_text = {
-- Diff file:
-- - "diff" in first line (context diff)
-- - "Only in " in first line
-- - "34,35c34,35" normal diff format output
-- - "--- " in first line and "+++ " in second line (unified diff).
-- - "*** " in first line and "--- " in second line (context diff).
-- - "# It was generated by makepatch " in the second line (makepatch diff).
@@ -2071,7 +2072,7 @@ local patterns_text = {
-- - "=== ", "--- ", "+++ " (bzr diff, common case)
-- - "=== (removed|added|renamed|modified)" (bzr diff, alternative)
-- - "# HG changeset patch" in first line (Mercurial export format)
['^\\(diff\\>\\|Only in \\|\\d\\+\\(,\\d\\+\\)\\=[cda]\\d\\+\\>\\|# It was generated by makepatch \\|Index:\\s\\+\\f\\+\\r\\=$\\|===== \\f\\+ \\d\\+\\.\\d\\+ vs edited\\|==== //\\f\\+#\\d\\+\\|# HG changeset patch\\)'] = {
['^\\(diff\\>\\|Only in \\|\\d\\+\\(,\\d\\+\\)\\=[cda]\\d\\+\\(,\\d\\+\\)\\=\\>$\\|# It was generated by makepatch \\|Index:\\s\\+\\f\\+\\r\\=$\\|===== \\f\\+ \\d\\+\\.\\d\\+ vs edited\\|==== //\\f\\+#\\d\\+\\|# HG changeset patch\\)'] = {
'diff',
{ vim_regex = true },
},