aboutsummaryrefslogtreecommitdiff
path: root/src/config_global.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/config_global.c')
-rw-r--r--src/config_global.c26
1 files changed, 8 insertions, 18 deletions
diff --git a/src/config_global.c b/src/config_global.c
index ee42935..c4e4dc8 100644
--- a/src/config_global.c
+++ b/src/config_global.c
@@ -94,21 +94,14 @@ char *get_user_package_dir(void) {
* @return
*/
char *get_package_manifest(void) {
- char template[PATH_MAX];
+ Manifest *manifest = NULL;
+ char *template = NULL;
char *ucd = get_user_conf_dir();
- sprintf(template, "%s%c%s", ucd, DIRSEP, "manifest.dat");
-
- free(ucd);
- return strdup(template);
-
- /*
- Manifest *manifest;
- manifest = manifest_read(NULL);
- if (manifest != NULL) {
- manifest_free(manifest);
- }
+ //free(ucd);
+ //return strdup(template);
+ template = join_ex(DIRSEPS, SPM_GLOBAL.package_dir, SPM_GLOBAL.repo_target, SPM_MANIFEST_FILENAME, NULL);
if (access(template, F_OK) != 0) {
fprintf(stderr, "Package manifest not found: %s\n", template);
manifest = manifest_from(PKG_DIR);
@@ -117,13 +110,12 @@ char *get_package_manifest(void) {
fprintf(SYSERROR);
return NULL;
}
- manifest_write(manifest);
+ manifest_write(manifest, PKG_DIR);
manifest_free(manifest);
}
free(ucd);
- return strdup(template);
- */
+ return template;
}
@@ -298,14 +290,12 @@ void init_config_global(void) {
item = config_get(SPM_GLOBAL.config, "package_manifest");
if (item) {
SPM_GLOBAL.package_manifest = strdup(item->value);
- /*
if (access(SPM_GLOBAL.package_manifest, F_OK) != 0) {
fprintf(stderr, "Package manifest not found: %s\n", SPM_GLOBAL.package_manifest);
Manifest *manifest = manifest_from(PKG_DIR);
- manifest_write(manifest);
+ manifest_write(manifest, SPM_GLOBAL.package_manifest);
manifest_free(manifest);
}
- */
}
else {
SPM_GLOBAL.package_manifest = get_package_manifest();