mirror of
https://github.com/amadvance/snapraid.git
synced 2026-10-26 19:01:57 -04:00
Optimizes console writes for Windows
This commit is contained in:
parent
6da3469fe7
commit
3040099e48
2 changed files with 21 additions and 14 deletions
|
|
@ -4002,7 +4002,7 @@ static void state_progress_graph(struct snapraid_state* state, struct snapraid_i
|
|||
printf("\n");
|
||||
}
|
||||
|
||||
printr("", pad);
|
||||
printc(' ', pad);
|
||||
printf(" |_");
|
||||
printc('_', bar);
|
||||
printf("\n");
|
||||
|
|
@ -4049,7 +4049,7 @@ static void state_progress_graph(struct snapraid_state* state, struct snapraid_i
|
|||
printc('*', v * bar / tick_total);
|
||||
printf("\n");
|
||||
|
||||
printr("", pad);
|
||||
printc(' ', pad);
|
||||
printf(" |_");
|
||||
printc('_', bar);
|
||||
printf("\n");
|
||||
|
|
|
|||
|
|
@ -305,8 +305,19 @@ void msg_flush(void)
|
|||
void printc(char c, size_t pad)
|
||||
{
|
||||
while (pad) {
|
||||
putchar(c);
|
||||
--pad;
|
||||
/* group writes in long pieces */
|
||||
char buf[128];
|
||||
size_t len = pad;
|
||||
|
||||
if (len >= sizeof(buf))
|
||||
len = sizeof(buf) - 1;
|
||||
|
||||
memset(buf, c, len);
|
||||
buf[len] = 0;
|
||||
|
||||
fputs(buf, stdout);
|
||||
|
||||
pad -= len;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -316,26 +327,22 @@ void printr(const char* str, size_t pad)
|
|||
|
||||
len = strlen(str);
|
||||
|
||||
while (len < pad) {
|
||||
putchar(' ');
|
||||
++len;
|
||||
}
|
||||
if (len < pad)
|
||||
printc(' ', pad - len);
|
||||
|
||||
printf("%s", str);
|
||||
fputs(str, stdout);
|
||||
}
|
||||
|
||||
void printl(const char* str, size_t pad)
|
||||
{
|
||||
size_t len;
|
||||
|
||||
printf("%s", str);
|
||||
fputs(str, stdout);
|
||||
|
||||
len = strlen(str);
|
||||
|
||||
while (len < pad) {
|
||||
putchar(' ');
|
||||
++len;
|
||||
}
|
||||
if (len < pad)
|
||||
printc(' ', pad - len);
|
||||
}
|
||||
|
||||
void printp(double v, size_t pad)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue