term->curs.x--;
term->wrapnext = FALSE;
fix_cpos;
- if (!term->cfg.no_dbackspace) /* destructive bksp might be disabled */
+ if (!term->cfg.no_dbackspace) { /* destructive bksp might be disabled */
+ check_boundary(term, term->curs.x, term->curs.y);
+ check_boundary(term, term->curs.x+1, term->curs.y);
*term->cpos = (' ' | term->curr_attr | ATTR_ASCII);
+ }
} else
/* Or normal C0 controls. */
if ((c & -32) == 0 && term->termstate < DO_CTRLS) {
}
term_print_flush(term);
+ logflush(term->logctx);
}
#if 0
}
tattr |= (tchar & CSET_MASK);
tchar &= CHAR_MASK;
- if ((d[1] & (CHAR_MASK | CSET_MASK)) == UCSWIDE)
- tattr |= ATTR_WIDE;
+ if (j < term->cols-1 &&
+ (d[1] & (CHAR_MASK | CSET_MASK)) == UCSWIDE)
+ tattr |= ATTR_WIDE;
/* Video reversing things */
if (term->selstate == DRAGGING || term->selstate == SELECTED) {