]> pd.if.org Git - zpackage/blobdiff - zpm-syncfs.c
remove unused elf tables, add elf summary view
[zpackage] / zpm-syncfs.c
index 0a0f1d51d1343d6c636f5f8c8719bdcc61cde37a..958fde80535b90e611366dbe8c6ab89c4c64ad5c 100644 (file)
@@ -234,16 +234,22 @@ static int remove_files(void *f, int ncols, char **vals, char **cols) {
        }
 
        if (S_ISDIR(st.st_mode)) {
-               fprintf(stderr, "rmdir %s\n", dest);
+               if (conf->verbose) {
+                       fprintf(stderr, "rmdir(%s)\n", dest);
+               }
                rmdir(dest);
        } else if (S_ISREG(st.st_mode)) {
                /* TODO conf to import before removal */
                if (conf->verbose) {
                        fprintf(stderr, "unlink(%s)\n", dest);
                }
-               unlink(dest);
+               if (unlink(dest) == -1) {
+                       IERR("can't unlink");
+               }
        } else {
-               unlink(dest);
+               if (unlink(dest) == -1) {
+                       IERR("can't unlink");
+               }
        }
        
        return 0;
@@ -361,10 +367,11 @@ static int install_files(void *f, int ncols, char **vals, char **cols) {
                        IERR("zero length symlink not allowed");
                }
 
-               if (conf->verbose > 1) {
-                       fprintf(stderr, "symlink %s -> %s\n", path, target);
+               if (conf->verbose > 0) {
+                       fprintf(stderr, "symlink %s -> %s\n", dest, target);
                }
-               if (symlink(target, path) == -1) {
+               if (symlink(target, dest) == -1) {
+                       perror("symlink failed");
                        IERR("can't symlink");
                }
        } else {
@@ -377,7 +384,7 @@ static int install_files(void *f, int ncols, char **vals, char **cols) {
                }
        }
 
-       struct timespec times[2] = { 0 };
+       struct timespec times[2] = { {0}, {0} };
        double mtime = strtod(COL("mtime"),NULL);
 
        times[0].tv_nsec = UTIME_OMIT;