[Midnightbsd-cvs] src [12293] trunk/lib/libmport/bundle_read_install_pkg.c: fix issues with absolute path sample files.
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Tue Dec 31 19:05:40 EST 2019
Revision: 12293
http://svnweb.midnightbsd.org/src/?rev=12293
Author: laffer1
Date: 2019-12-31 19:05:39 -0500 (Tue, 31 Dec 2019)
Log Message:
-----------
fix issues with absolute path sample files.
Modified Paths:
--------------
trunk/lib/libmport/bundle_read_install_pkg.c
Modified: trunk/lib/libmport/bundle_read_install_pkg.c
===================================================================
--- trunk/lib/libmport/bundle_read_install_pkg.c 2020-01-01 00:02:55 UTC (rev 12292)
+++ trunk/lib/libmport/bundle_read_install_pkg.c 2020-01-01 00:05:39 UTC (rev 12293)
@@ -236,8 +236,10 @@
char nonSample[FILENAME_MAX * 2];
char secondFile[FILENAME_MAX];
- strlcpy(nonSample, file, FILENAME_MAX * 2);
- (void) snprintf(nonSample, FILENAME_MAX, "%s%s/%s", mport->root, cwd, file);
+ if (file[0] != '/')
+ (void) snprintf(nonSample, FILENAME_MAX, "%s%s/%s", mport->root, cwd, file);
+ else
+ strlcpy(nonSample, file, FILENAME_MAX * 2);
char** fileargv = parse_sample(nonSample);
if (fileargv[1] != '\0') {
@@ -497,7 +499,11 @@
if (mport_bundle_read_next_entry(bundle, &entry) != MPORT_OK)
goto ERROR;
- (void) snprintf(file, FILENAME_MAX, "%s%s/%s", mport->root, cwd, e->data);
+ if (e->data[0] == '/') {
+ (void) snprintf(file, FILENAME_MAX, "%s", e->data);
+ } else {
+ (void) snprintf(file, FILENAME_MAX, "%s%s/%s", mport->root, cwd, e->data);
+ }
if (e->type == ASSET_SAMPLE)
for (int ch = 0; ch < FILENAME_MAX; ch++) {
More information about the Midnightbsd-cvs
mailing list