index : pacman | |
Archlinux32 fork of pacman | gitolite user |
summaryrefslogtreecommitdiff |
author | Dan McGee <dan@archlinux.org> | 2011-03-21 07:53:13 -0500 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2011-03-21 07:53:13 -0500 |
commit | 0ff52b68452046d61c24649ec94886bd74faab45 (patch) | |
tree | a9960a6143d17aeedeb530f2fe57c6796966e205 /src/pacman/sync.c | |
parent | c67c864ffd50ec0e071b055897c4622eaa132fc2 (diff) | |
parent | b0bb4f9024712adcee5e2baf6cebe73c966d7d7f (diff) |
-rw-r--r-- | src/pacman/sync.c | 40 |
diff --git a/src/pacman/sync.c b/src/pacman/sync.c index 9f6c3e09..b12206c4 100644 --- a/src/pacman/sync.c +++ b/src/pacman/sync.c @@ -637,25 +637,37 @@ static int process_group(alpm_list_t *dbs, char *group) return 1; } - printf(_(":: There are %d members in group %s:\n"), count, - group); - select_display(pkgs); - char *array = malloc(count); - multiselect_question(array, count); - int n = 0; - for(i = pkgs; i; i = alpm_list_next(i)) { - if(array[n++] == 0) - continue; - pmpkg_t *pkg = alpm_list_getdata(i); - if(process_pkg(pkg) == 1) { - ret = 1; - goto cleanup; + if(config->print == 0) { + printf(_(":: There are %d members in group %s:\n"), count, + group); + select_display(pkgs); + char *array = malloc(count); + multiselect_question(array, count); + int n = 0; + for(i = pkgs; i; i = alpm_list_next(i)) { + if(array[n++] == 0) + continue; + pmpkg_t *pkg = alpm_list_getdata(i); + + if(process_pkg(pkg) == 1) { + ret = 1; + free(array); + goto cleanup; + } + } + } else { + for(i = pkgs; i; i = alpm_list_next(i)) { + pmpkg_t *pkg = alpm_list_getdata(i); + + if(process_pkg(pkg) == 1) { + ret = 1; + goto cleanup; + } } } cleanup: alpm_list_free(pkgs); - free(array); return ret; } |