Tell child initial window size. Fix combining char order flip
This commit is contained in:
@@ -140,6 +140,12 @@ void emulate_terminal( int fd, int debug_fd )
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* tell child process */
|
||||||
|
if ( ioctl( fd, TIOCSWINSZ, &window_size ) < 0 ) {
|
||||||
|
perror( "ioctl TIOCSWINSZ" );
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
/* open parser and terminal */
|
/* open parser and terminal */
|
||||||
Parser::UTF8Parser parser;
|
Parser::UTF8Parser parser;
|
||||||
Terminal::Emulator terminal( window_size.ws_col, window_size.ws_row );
|
Terminal::Emulator terminal( window_size.ws_col, window_size.ws_row );
|
||||||
|
|||||||
@@ -186,8 +186,8 @@ Cell *Framebuffer::get_cell( int row, int col )
|
|||||||
|
|
||||||
Cell *Framebuffer::get_combining_cell( void )
|
Cell *Framebuffer::get_combining_cell( void )
|
||||||
{
|
{
|
||||||
if ( (ds.get_combining_char_row() >= ds.get_width())
|
if ( (ds.get_combining_char_col() >= ds.get_width())
|
||||||
|| (ds.get_combining_char_col() >= ds.get_height()) ) {
|
|| (ds.get_combining_char_row() >= ds.get_height()) ) {
|
||||||
return NULL;
|
return NULL;
|
||||||
} /* can happen if a resize came in between */
|
} /* can happen if a resize came in between */
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user