summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan McGee <dan@archlinux.org>2009-12-13 23:12:44 -0600
committerDan McGee <dan@archlinux.org>2009-12-13 23:12:44 -0600
commite612eb6ba227104761b9c6fafe375c74267bba09 (patch)
treeac765b3eb1a594e0625427dd363bbf5e210dfbac
parent926dfe5827d13a38f02efb2da1d9ceab38e9fc16 (diff)
downloadpacman-e612eb6ba227104761b9c6fafe375c74267bba09.tar.xz
Remove trailing whitespace on all lines in list_display
This ensures we never have trailing whitespace. Take the following text, with line numbers added for clarity: 1. Title : item1 item2 item3 item4 2. item5 item6 item7 item8 3. item9 itemA itemB itemC Laszlo Papp helpfully pointed out we would have two trailing spaces on line three after the last item. However, we also had these trailing spaces on lines one and two, which the initial patch didn't take care of. This can be seen on something like `pacman -Qi glibc`. Signed-off-by: Dan McGee <dan@archlinux.org>
-rw-r--r--src/pacman/util.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/pacman/util.c b/src/pacman/util.c
index 115b3673..14a0f6cd 100644
--- a/src/pacman/util.c
+++ b/src/pacman/util.c
@@ -446,18 +446,20 @@ void list_display(const char *title, const alpm_list_t *list)
for(i = list, cols = len; i; i = alpm_list_next(i)) {
char *str = alpm_list_getdata(i);
int s = string_length(str);
- /* two additional spaces are added to the length */
- s += 2;
int maxcols = getcols();
- if(s + cols > maxcols && maxcols > 0) {
+ if(maxcols > 0 && (cols + s + 2) >= maxcols) {
int j;
cols = len;
printf("\n");
for (j = 1; j <= len; j++) {
printf(" ");
}
+ } else if (cols != len) {
+ /* 2 spaces are added if this is not the first element on a line. */
+ printf(" ");
+ cols += 2;
}
- printf("%s ", str);
+ printf("%s", str);
cols += s;
}
printf("\n");