]> pd.if.org Git - zpackage/blobdiff - zpm-addfile.c
let addfile take multiple files
[zpackage] / zpm-addfile.c
index 961b6b806876a5fdff4bd0996264668df5877b6e..160d84f7e115009b062f154e69edc2a13efb43a3 100644 (file)
@@ -1,20 +1,35 @@
+#include <stdlib.h>
 #include <stdio.h>
 #include "zpm.h"
 
 int main(int ac, char **av){
        struct zpm pkg;
        char hash[65];
+       int i;
 
        if (ac < 3) {
                fprintf(stderr, "usage: db path\n");
                return 1;
        }
-       zpm_open(&pkg, av[1]);
-       zpm_begin(&pkg);
-       zpm_import(&pkg, av[2], 0, hash);
+
+       /* this is really just read env */
+       zpm_readopts(&pkg, ac, av);
+
+       if (zpm_open(&pkg, av[1])) {
+               zpm_begin(&pkg);
+               for (i=2; i<ac; i++) {
+                       if (zpm_import(&pkg, av[2], 0, hash)) {
+                               fprintf(stdout, "%s\n", hash);
+       //                      zpm_addtopackage(&pkg, hash, 0);
+                               //fprintf(stdout, "%s %s\n", hash, av[2]);
+                       } else {
+                               zpm_rollback(&pkg);
+                               zpm_close(&pkg);
+                               exit(1);
+                       }
+               }
+       }
        zpm_commit(&pkg);
        zpm_close(&pkg);
-       //fprintf(stdout, "%s %s\n", hash, av[2]);
-       fprintf(stdout, "%s\n", hash);
        return 0;
 }