=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/mg/file.c,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- src/usr.bin/mg/file.c 2005/04/21 19:16:21 1.33 +++ src/usr.bin/mg/file.c 2005/05/27 08:52:30 1.34 @@ -1,4 +1,4 @@ -/* $OpenBSD: file.c,v 1.33 2005/04/21 19:16:21 beck Exp $ */ +/* $OpenBSD: file.c,v 1.34 2005/05/27 08:52:30 cloder Exp $ */ /* * File commands. @@ -39,9 +39,18 @@ filevisit(int f, int n) { BUFFER *bp; - char fname[NFILEN], *bufp, *adjf; + char fname[NFILEN], *bufp, *adjf, *slash; - bufp = eread("Find file: ", fname, NFILEN, EFNEW | EFCR | EFFILE); + if (curbp->b_fname && curbp->b_fname[0] != '\0') { + strlcpy(fname, curbp->b_fname, sizeof(fname)); + if ((slash = strrchr(fname, '/')) != NULL) { + *(slash + 1) = '\0'; + } + } + else + fname[0] = '\0'; + + bufp = eread("Find file: ", fname, NFILEN, EFNEW | EFCR | EFFILE | EFDEF); if (bufp == NULL) return (ABORT); else if (bufp[0] == '\0')