X-Git-Url: http://git.vrable.net/?p=cumulus.git;a=blobdiff_plain;f=scandir.cc;h=8af3175b64c3b6007a5497f4c4ac8d81e5d9ff7c;hp=d7752193b0c13d53e2518f7b72ff6c8cda2e5114;hb=f38dd9bcb0caffd3fc9126b05788c936690e8288;hpb=41bf14f1d09d9da4d6c4df6795d2cf7a48a39ba7 diff --git a/scandir.cc b/scandir.cc index d775219..8af3175 100644 --- a/scandir.cc +++ b/scandir.cc @@ -357,12 +357,12 @@ void dump_inode(const string& path, // Path within snapshot file_info["volatile"] = "1"; struct passwd *pwd = getpwuid(stat_buf.st_uid); - if (pwd != NULL) { + if (pwd != NULL && pwd->pw_name != NULL) { file_info["user"] += " (" + uri_encode(pwd->pw_name) + ")"; } struct group *grp = getgrgid(stat_buf.st_gid); - if (pwd != NULL) { + if (grp != NULL && grp->gr_name != NULL) { file_info["group"] += " (" + uri_encode(grp->gr_name) + ")"; } @@ -804,8 +804,7 @@ int main(int argc, char *argv[]) tmp_dir.c_str()); return 1; } - remote = new RemoteStore(tmp_dir); - remote->set_script(backup_script); + remote = new RemoteStore(tmp_dir, backup_script=backup_script); } else { remote = new RemoteStore(backup_dest); }