~mdw
/
dvdrip
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
multiprogress.[ch]: Save and restore `PC' in the render state.
[dvdrip]
/
multiprogress.c
diff --git
a/multiprogress.c
b/multiprogress.c
index
3d4ba8c
..
4254e13
100644
(file)
--- a/
multiprogress.c
+++ b/
multiprogress.c
@@
-116,7
+116,7
@@
int progress_init(struct progress_state *progress)
if (tgetflag("ut") > 0) tty->cap.f |= TCF_BCE;
if (tgetflag("ut") > 0) tty->cap.f |= TCF_BCE;
- t = tgetstr("pc", &capcur);
PC
= t ? *t : 0;
+ t = tgetstr("pc", &capcur);
tty->cap.pc
= t ? *t : 0;
SETDIM(defwd, "COLUMNS", tgetnum("co"), 80);
SETDIM(defht, "LINES", tgetnum("li"), 25);
SETDIM(defwd, "COLUMNS", tgetnum("co"), 80);
SETDIM(defht, "LINES", tgetnum("li"), 25);
@@
-257,6
+257,7
@@
static int setup_render_state(struct progress_state *progress,
#ifdef USE_TERMCAP
render->old_bc = BC; BC = 0;
render->old_up = UP; UP = 0;
#ifdef USE_TERMCAP
render->old_bc = BC; BC = 0;
render->old_up = UP; UP = 0;
+ render->old_pc = PC; PC = tty->cap.pc;
#endif
if (!ioctl(fileno(tty->fp), TIOCGWINSZ, &wsz))
#endif
if (!ioctl(fileno(tty->fp), TIOCGWINSZ, &wsz))
@@
-277,6
+278,7
@@
static void free_render_state(struct progress_render_state *render)
#ifdef USE_TERMCAP
UP = render->old_up;
BC = render->old_bc;
#ifdef USE_TERMCAP
UP = render->old_up;
BC = render->old_bc;
+ PC = render->old_pc;
#endif
}
#endif
}