--- weston_a/clients/terminal.c 2013-11-24 13:18:57.020992332 +0200 +++ weston_b/clients/terminal.c 2013-11-24 13:24:22.147652393 +0200 @@ -1414,9 +1414,12 @@ terminal->curr_attr, terminal->width); } } else if (args[0] == 2) { - /* Clear screen by scrolling contents out */ - terminal_scroll_buffer(terminal, - terminal->end - terminal->start); + for (i = 0; i < terminal->height; i++) { + memset(terminal_get_row(terminal, i), + 0, terminal->data_pitch); + attr_init(terminal_get_attr_row(terminal, i), + terminal->curr_attr, terminal->width); + } } break; case 'K': /* EL */