mirror of
https://https.git.savannah.gnu.org/git/patch.git
synced 2026-01-26 16:09:26 +00:00
Problem reported by Sam James in: https://lists.gnu.org/archive/html/bug-patch/2025-02/msg00014.html https://bugs.gentoo.org/show_bug.cgi?id=949834 * src/patch.c (backup_if_mismatch_specified): New static var. (get_some_switches): Set it. (main): Default backup_if_mismatch only if not set on command line. * tests/no-backup: New file. * tests/Makefile.am (TESTS): Add it.
57 lines
970 B
Plaintext
57 lines
970 B
Plaintext
# Copyright 2025 Free Software Foundation, Inc.
|
|
#
|
|
# Copying and distribution of this file, with or without modification,
|
|
# in any medium, are permitted without royalty provided the copyright
|
|
# notice and this notice are preserved.
|
|
|
|
# Test the --no-backup-if-mismatch option
|
|
|
|
. $srcdir/test-lib.sh
|
|
|
|
require cat
|
|
use_local_patch
|
|
use_tmpdir
|
|
|
|
# ==============================================================
|
|
|
|
cat >my_file <<'EOF'
|
|
/* ... */
|
|
void baz();
|
|
|
|
|
|
void baz() {
|
|
/* ... */
|
|
}
|
|
|
|
int main() {
|
|
int foo;
|
|
int bar;
|
|
|
|
/* ... */
|
|
baz();
|
|
}
|
|
EOF
|
|
|
|
cat >my_file.patch <<'EOF'
|
|
--- my_file 2025-02-16 11:22:12.881765792 +0000
|
|
+++ my_file_new 2025-02-16 11:22:12.881796732 +0000
|
|
@@ -2,7 +2,7 @@
|
|
void baz();
|
|
|
|
void baz() {
|
|
- /* ... */
|
|
+ // ...
|
|
}
|
|
|
|
int main() {
|
|
EOF
|
|
|
|
unset POSIXLY_CORRECT
|
|
|
|
check 'patch -N --no-backup-if-mismatch <my_file.patch || echo "Status: $?"' <<'EOF'
|
|
patching file my_file
|
|
Hunk #1 succeeded at 3 with fuzz 1 (offset 1 line).
|
|
EOF
|
|
|
|
ncheck 'test ! -f my_file.orig'
|