diff options
author | jkh <jkh@FreeBSD.org> | 1995-10-31 20:30:18 +0000 |
---|---|---|
committer | jkh <jkh@FreeBSD.org> | 1995-10-31 20:30:18 +0000 |
commit | 6f708e7f5a6f26e4f3924e2766f1b8df6d4ed697 (patch) | |
tree | 8841d9bc39a9e78b48b9d3a8768121f38cc8be81 /usr.sbin/pkg_install | |
parent | 18198dc6cbc2178eaea2c011a25e4f486f366716 (diff) | |
download | FreeBSD-src-6f708e7f5a6f26e4f3924e2766f1b8df6d4ed697.zip FreeBSD-src-6f708e7f5a6f26e4f3924e2766f1b8df6d4ed697.tar.gz |
Fix the `pkg_add relative to .' bug. Thank you, Ville!
Submitted by: Ville Eerola <ville@vlsi.fi>
Diffstat (limited to 'usr.sbin/pkg_install')
-rw-r--r-- | usr.sbin/pkg_install/add/perform.c | 8 | ||||
-rw-r--r-- | usr.sbin/pkg_install/lib/file.c | 4 |
2 files changed, 7 insertions, 5 deletions
diff --git a/usr.sbin/pkg_install/add/perform.c b/usr.sbin/pkg_install/add/perform.c index bee2fbb..a6ee117 100644 --- a/usr.sbin/pkg_install/add/perform.c +++ b/usr.sbin/pkg_install/add/perform.c @@ -1,5 +1,5 @@ #ifndef lint -static const char *rcsid = "$Id: perform.c,v 1.26.2.5 1995/10/23 12:33:38 jkh Exp $"; +static const char *rcsid = "$Id: perform.c,v 1.30 1995/10/25 15:37:49 jkh Exp $"; #endif /* @@ -109,8 +109,10 @@ pkg_do(char *pkg) else { if (pkg[0] == '/') /* full pathname? */ strcpy(pkg_fullname, pkg); - else - sprintf(pkg_fullname, "./%s", pkg); + else { + char cwd[FILENAME_MAX]; + sprintf(pkg_fullname, "%s/%s", getwd(cwd),pkg); + } if (!fexists(pkg_fullname)) { cp = fileFindByPath(NULL, pkg); diff --git a/usr.sbin/pkg_install/lib/file.c b/usr.sbin/pkg_install/lib/file.c index 86e0005..ce17e97 100644 --- a/usr.sbin/pkg_install/lib/file.c +++ b/usr.sbin/pkg_install/lib/file.c @@ -1,5 +1,5 @@ #ifndef lint -static const char *rcsid = "$Id: file.c,v 1.10.4.6 1995/10/15 14:08:40 jkh Exp $"; +static const char *rcsid = "$Id: file.c,v 1.17 1995/10/25 15:38:32 jkh Exp $"; #endif /* @@ -335,7 +335,7 @@ fileFindByPath(char *base, char *fname) char *cp2 = strsep(&cp, ":"); snprintf(tmp, FILENAME_MAX, "%s/%s.tgz", cp2 ? cp2 : cp, fname); - if (fexists(tmp) && isfile(fname)) + if (fexists(tmp) && isfile(tmp)) return tmp; } return NULL; |