diff -urN cui87/cui.c cui88/cui.c --- cui87/cui.c Fri Mar 28 03:00:00 2014 +++ cui88/cui.c Mon Mar 31 01:00:00 2014 @@ -105,15 +105,19 @@ int n = strlen(s); char *s2 = NULL; +cui_dbg_here("ck1"); if(!cui_visible_rect(obj, r1)) return; +cui_dbg_here("ck2"); cui_rect_init(r2, x, y, n, 1); if(!cui_rect_and(r1, r2, r2)) return; /* r1 and r2 --> r2 */ +cui_dbg_here("ck3"); if(cui_clip){ *r1 = *cui_clip; r1->x = cui_lx(obj, r1->x); r1->y = cui_ly(obj, r1->y); if(!cui_rect_and(r1, r2, r2)) return; } +cui_dbg_here("ck4"); s += r2->x - x; if(r2->x + r2->w < x + n){ diff -urN cui87/dbg.c cui88/dbg.c --- cui87/dbg.c Sun Mar 30 22:00:00 2014 +++ cui88/dbg.c Mon Mar 31 01:00:00 2014 @@ -5,6 +5,7 @@ #include static FILE *fp = NULL; +int cui_dbg_enable = 1; int cui_dbg_open(int ac, char **av) @@ -13,6 +14,9 @@ int i; char *nc_opt = "localhost 12345"; + for(i=1; i= ac) return 0; @@ -34,6 +38,7 @@ va_list ap; if(!fp) return; + if(!cui_dbg_enable) return; va_start(ap, fmt); vfprintf(fp, fmt, ap); fflush(fp); diff -urN cui87/dbg.h cui88/dbg.h --- cui87/dbg.h Sun Mar 30 22:00:00 2014 +++ cui88/dbg.h Mon Mar 31 01:00:00 2014 @@ -1,6 +1,10 @@ #ifndef __DBG_H__ #define __DBG_H__ +#define cui_dbg_here(s) cui_dbg("%s() %s L%d : %s\n", __func__, __FILE__, __LINE__, s) + +extern int cui_dbg_enable; + int cui_dbg_open(int ac, char **av); void cui_dbg_close(void); void cui_dbg(char *fmt, ...); diff -urN cui87/term.c cui88/term.c --- cui87/term.c Mon Mar 31 00:00:00 2014 +++ cui88/term.c Mon Mar 31 01:00:00 2014 @@ -53,7 +53,9 @@ if(*attr == -1) return; *lp = '\0'; +cui_dbg_enable = 1; cui_draw_str(obj, x, y, p->lbuf, *attr & ~UPDATE_FLG); +cui_dbg_enable = 0; *attr = -1; }