summaryrefslogtreecommitdiff
path: root/usr.bin/vi
diff options
context:
space:
mode:
authorpooka <pooka@NetBSD.org>2002-02-09 19:33:53 +0000
committerpooka <pooka@NetBSD.org>2002-02-09 19:33:53 +0000
commitbbd559bc7aba030db24da6787f3822fa81c4ce57 (patch)
tree3fd3b9e1a0cfcb399bd28f6dc22e52b032787d82 /usr.bin/vi
parentfad7e32235d8be15c99a412b87cdd8ae27cccf9d (diff)
Exit the file_init "recursion" only if we are actually already trying for
a second time. Checking for the plain temp filename was not enough, as it may be set even though we are calling the function for the first time. fixes bin/15474 by Chuck Cranor
Diffstat (limited to 'usr.bin/vi')
-rw-r--r--usr.bin/vi/common/exf.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/usr.bin/vi/common/exf.c b/usr.bin/vi/common/exf.c
index 2b4423897cc..2ae969e1bc0 100644
--- a/usr.bin/vi/common/exf.c
+++ b/usr.bin/vi/common/exf.c
@@ -1,4 +1,4 @@
-/* $NetBSD: exf.c,v 1.6 2002/01/13 11:57:38 aymeric Exp $ */
+/* $NetBSD: exf.c,v 1.7 2002/02/09 19:33:53 pooka Exp $ */
/*-
* Copyright (c) 1992, 1993, 1994
@@ -187,7 +187,7 @@ file_init(sp, frp, rcv_name, flags)
/*
* Don't try to create a temporary support file twice.
*/
- if (frp->tname != NULL)
+ if (frp->tname != NULL && LF_ISSET(FS_OPENERR))
goto err;
if (opts_empty(sp, O_DIRECTORY, 0))
goto err;