# st

Unnamed repository; edit this file 'description' to name the repository.

| Log | Files | Refs | README | LICENSE

    commit fed9968ba5d3c6874f73517b261968746d36801e
    parent 0ca0dd8b11ec0febc547e485395b7c9ec01e2866
    Author: Alexander Sedov <alex0player@gmail.com>
    Date:   Mon, 15 Apr 2013 00:12:10 +0400

    Got rid of code duplication in tnew() and tresize().

    Signed-off-by: Christoph Lohmann <20h@r-36.net>

    Diffstat:
    Mst.c | 18+++---------------

    1 file changed, 3 insertions(+), 15 deletions(-)
    diff --git a/st.c b/st.c
    @@ -1195,22 +1195,10 @@ treset(void) {

     void
     tnew(int col, int row) {
    -	/* set screen size */
    -	term.row = row;
    -	term.col = col;
    -	term.line = xmalloc(term.row * sizeof(Line));
    -	term.alt  = xmalloc(term.row * sizeof(Line));
    -	term.dirty = xmalloc(term.row * sizeof(*term.dirty));
    -	term.tabs = xmalloc(term.col * sizeof(*term.tabs));
    -
    -	for(row = 0; row < term.row; row++) {
    -		term.line[row] = xmalloc(term.col * sizeof(Glyph));
    -		term.alt [row] = xmalloc(term.col * sizeof(Glyph));
    -		term.dirty[row] = 0;
    -	}
    -
    +	/* setting "zero" terminal to resize it later */
    +	memset(&term, 0, sizeof(Term));
    +	tresize(col, row);
     	term.numlock = 1;
    -	memset(term.tabs, 0, term.col * sizeof(*term.tabs));
     	/* setup screen */
     	treset();
     }