summaryrefslogtreecommitdiff
path: root/usr.bin
diff options
context:
space:
mode:
authorimp <imp@cvs.openbsd.org>1997-04-03 07:07:37 +0000
committerimp <imp@cvs.openbsd.org>1997-04-03 07:07:37 +0000
commitfd7164b75a9a2eee04822dd909b14c62cf3a5d83 (patch)
tree027bf1727f931f10d2b2199160e7120f22d9f2dd /usr.bin
parentf54f7a3442bbe4347e92173ee9d89a8d69094791 (diff)
From FreeBSD 1.7 by markm. The log message:
Priorities were broken. If there was an Index: line and ***/--- lines with valid names, the ***/---names were taken first. this broke eg: Index: foo/Makefile ========== RCS <blah> Retrieving <blah> diff <blah> *** Makefile <blah> --- Makefile <blah> By trying to patch the Makefile in the _curent_ directory, rather than the one in the foo/ directory.
Diffstat (limited to 'usr.bin')
-rw-r--r--usr.bin/patch/pch.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/usr.bin/patch/pch.c b/usr.bin/patch/pch.c
index abed3936332..c5f57bdfb37 100644
--- a/usr.bin/patch/pch.c
+++ b/usr.bin/patch/pch.c
@@ -1,7 +1,7 @@
-/* $OpenBSD: pch.c,v 1.7 1996/09/24 04:19:29 millert Exp $ */
+/* $OpenBSD: pch.c,v 1.8 1997/04/03 07:07:36 imp Exp $ */
#ifndef lint
-static char rcsid[] = "$OpenBSD: pch.c,v 1.7 1996/09/24 04:19:29 millert Exp $";
+static char rcsid[] = "$OpenBSD: pch.c,v 1.8 1997/04/03 07:07:36 imp Exp $";
#endif /* not lint */
#include "EXTERN.h"
@@ -306,7 +306,9 @@ intuit_diff_type()
oldname = fetchname(oldtmp, strippath, ok_to_create_file);
if (newtmp != Nullch)
newname = fetchname(newtmp, strippath, ok_to_create_file);
- if (oldname && newname) {
+ if (indname)
+ filearg[0] = savestr(indname);
+ else if (oldname && newname) {
if (strlen(oldname) < strlen(newname))
filearg[0] = savestr(oldname);
else
@@ -316,8 +318,6 @@ intuit_diff_type()
filearg[0] = savestr(oldname);
else if (newname)
filearg[0] = savestr(newname);
- else if (indname)
- filearg[0] = savestr(indname);
}
if (bestguess) {
free(bestguess);