lto->screenChar = (UNICHAR *) MALLOC(lts->screenSize * sizeof(UNICHAR));
int screenSize = lts->nRows * lts->nCols;  lto->screenChar = (UNICHAR *) MALLOC(screenSize * sizeof(UNICHAR));
int ltermClearOutputScreen(struct lterms *lts){  struct LtermOutput *lto = &(lts->ltermOutput);  int j;  LTERM_LOG(ltermClearOutputScreen,40,("\n"));  if (lto->screenChar == NULL) {    /* Allocate memory for full screen */    lto->screenChar = (UNICHAR *) MALLOC(lts->screenSize * sizeof(UNICHAR));    if (lto->screenChar == NULL) {      LTERM_ERROR("ltermClearOutputScreen: Error - failed to allocate memory for chars\n");      return -1;    }    assert(lto->screenStyle == NULL);    lto->screenStyle = (UNISTYLE *) MALLOC(lts->screenSize * sizeof(UNISTYLE));    if (lto->screenStyle == NULL) {      LTERM_ERROR("ltermClearOutputScreen: Error - failed to allocate memory for style\n");      return -1;    }  }    /* Position cursor at home */  lto->cursorRow = lts->nRows - 1;  lto->cursorCol = 0;  /* Blank out entire screen */  if (ltermInsDelEraseLine(lts, lts->nRows, lts->nRows-1, LTERM_ERASE_ACTION) != 0)    return -1;  /* No rows modified yet */  for (j=0; j<lts->nRows; j++) {    lto->modifiedCol[j] = -1;  }  return 0;}