aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin
diff options
context:
space:
mode:
authorMaxim Sobolev <sobomax@FreeBSD.org>2002-09-03 06:59:33 +0000
committerMaxim Sobolev <sobomax@FreeBSD.org>2002-09-03 06:59:33 +0000
commit76b27d215008b587b8412c8a68289a36d92d2910 (patch)
tree8fe10f4065002928d711d8f511ca2201788205a1 /usr.sbin
parentf8a4c9012c61821ea55b0a3da715970f9fdf56d1 (diff)
Notes
Diffstat (limited to 'usr.sbin')
-rw-r--r--usr.sbin/pkg_install/add/perform.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/usr.sbin/pkg_install/add/perform.c b/usr.sbin/pkg_install/add/perform.c
index e1ef7a340e1d..90d442099c23 100644
--- a/usr.sbin/pkg_install/add/perform.c
+++ b/usr.sbin/pkg_install/add/perform.c
@@ -267,8 +267,12 @@ pkg_do(char *pkg)
if (!Fake) {
if (!isURL(pkg) && !getenv("PKG_ADD_BASE")) {
- /* XXX: need to handle .tgz also */
- snprintf(path, FILENAME_MAX, "%s/%s.tbz", getenv("_TOP"), p->name);
+ const char *ext;
+
+ ext = strrchr(pkg_fullname, '.');
+ if (ext == NULL)
+ ext = ".tbz";
+ snprintf(path, FILENAME_MAX, "%s/%s%s", getenv("_TOP"), p->name, ext);
if (fexists(path))
cp = path;
else