patch-screen_c 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. $OpenBSD: patch-screen_c,v 1.1 2017/05/12 20:27:25 naddy Exp $
  2. Index: screen.c
  3. --- screen.c.orig
  4. +++ screen.c
  5. @@ -234,11 +234,12 @@ update(int anychanged) /* did any cell really change
  6. i = stcol;
  7. lcols = 0;
  8. col = rescol + frcols;
  9. - if (fr && stcol >= fr->or_left->col)
  10. + if (fr && stcol >= fr->or_left->col) {
  11. if (stcol < fr->ir_left->col)
  12. i = fr->or_left->col;
  13. else
  14. col += flcols;
  15. + }
  16. for (; (col + fwidth[i] < cols-1 || col_hidden[i] || i < curcol) &&
  17. i < maxcols; i++) {
  18. lcols++;
  19. @@ -328,11 +329,12 @@ update(int anychanged) /* did any cell really change
  20. i = stcol;
  21. lcols = 0;
  22. col = rescol + frcols;
  23. - if (fr && stcol >= fr->or_left->col)
  24. + if (fr && stcol >= fr->or_left->col) {
  25. if (stcol < fr->ir_left->col)
  26. i = fr->or_left->col;
  27. else
  28. col += flcols;
  29. + }
  30. for (; (col + fwidth[i] < cols-1 || col_hidden[i] || i < curcol) &&
  31. i < maxcols; i++) {
  32. lcols++;
  33. @@ -377,11 +379,12 @@ update(int anychanged) /* did any cell really change
  34. i = strow;
  35. rows = 0;
  36. row = RESROW + fbrows;
  37. - if (fr && strow >= fr->or_left->row)
  38. + if (fr && strow >= fr->or_left->row) {
  39. if (strow < fr->ir_left->row)
  40. i = fr->or_left->row;
  41. else
  42. row += ftrows;
  43. + }
  44. for (; (row < lines || row_hidden[i] || i < currow) && i < maxrows;
  45. i++) {
  46. rows++;
  47. @@ -460,11 +463,12 @@ update(int anychanged) /* did any cell really change
  48. i = strow;
  49. rows = 0;
  50. row = RESROW + fbrows;
  51. - if (fr && strow >= fr->or_left->row)
  52. + if (fr && strow >= fr->or_left->row) {
  53. if (strow < fr->ir_left->row)
  54. i = fr->or_left->row;
  55. else
  56. row += ftrows;
  57. + }
  58. for (; (row < lines || row_hidden[i] || i < currow) && i < maxrows;
  59. i++) {
  60. rows++;
  61. @@ -870,7 +874,7 @@ update(int anychanged) /* did any cell really change
  62. }
  63. } /* else */
  64. } else
  65. - if (!*pp && color && has_colors && cr && cr->r_color != 1) {
  66. + if (!*pp && color && has_colors() && cr && cr->r_color != 1) {
  67. move(r, c);
  68. color_set(cr->r_color, NULL);
  69. printw("%*s", fwidth[col], " ");