pretty-print: add format-string version of draw_progress_bar()

We often format the prefix string via asprintf() before, let's hence add
a helper for that.
This commit is contained in:
Lennart Poettering
2024-10-29 21:37:26 +01:00
parent 21abc0a943
commit 91d640435d
8 changed files with 61 additions and 58 deletions
+16
View File
@@ -548,6 +548,22 @@ void draw_progress_bar(const char *prefix, double percentage) {
draw_progress_bar_unbuffered(prefix, percentage);
}
int draw_progress_barf(double percentage, const char *prefixf, ...) {
_cleanup_free_ char *s = NULL;
va_list ap;
int r;
va_start(ap, prefixf);
r = vasprintf(&s, prefixf, ap);
va_end(ap);
if (r < 0)
return -ENOMEM;
draw_progress_bar(s, percentage);
return 0;
}
void clear_progress_bar(const char *prefix) {
WITH_BUFFERED_STDERR;
clear_progress_bar_unbuffered(prefix);
+1
View File
@@ -54,6 +54,7 @@ int terminal_tint_color(double hue, char **ret);
bool shall_tint_background(void);
void draw_progress_bar(const char *prefix, double percentage);
int draw_progress_barf(double percentage, const char *prefixf, ...) _printf_(2, 3);
void clear_progress_bar(const char *prefix);
void draw_progress_bar_unbuffered(const char *prefix, double percentage);
void clear_progress_bar_unbuffered(const char *prefix);