X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=ldisc.c;h=e57271860f24014aa161c82d2e660e83fba064a3;hb=6b362191f1a2c6897e7b7bfa80beec1cd1f722fd;hp=d569f11239e517151e4113547eba594ea6736dbe;hpb=6aa4211f6ebe8e2051a8f58be9a0f8594ac60e39;p=PuTTY.git diff --git a/ldisc.c b/ldisc.c index d569f112..e5727186 100644 --- a/ldisc.c +++ b/ldisc.c @@ -23,7 +23,7 @@ static void c_write(Ldisc ldisc, char *buf, int len) { - from_backend(ldisc->term, 0, buf, len); + from_backend(ldisc->frontend, 0, buf, len); } static int plen(Ldisc ldisc, unsigned char c) @@ -65,7 +65,7 @@ void *ldisc_create(Config *mycfg, Terminal *term, Backend *back, void *backhandle, void *frontend) { - Ldisc ldisc = smalloc(sizeof(*ldisc)); + Ldisc ldisc = snew(struct ldisc_tag); ldisc->buf = NULL; ldisc->buflen = 0; @@ -164,8 +164,8 @@ void ldisc_send(void *handle, char *buf, int len, int interactive) bsb(ldisc, plen(ldisc, ldisc->buf[ldisc->buflen - 1])); ldisc->buflen--; if (ldisc->buflen > 0 && - isspace(ldisc->buf[ldisc->buflen - 1]) && - !isspace(ldisc->buf[ldisc->buflen])) + isspace((unsigned char)ldisc->buf[ldisc->buflen-1]) && + !isspace((unsigned char)ldisc->buf[ldisc->buflen])) break; } break; @@ -261,7 +261,7 @@ void ldisc_send(void *handle, char *buf, int len, int interactive) default_case: if (ldisc->buflen >= ldisc->bufsiz) { ldisc->bufsiz = ldisc->buflen + 256; - ldisc->buf = srealloc(ldisc->buf, ldisc->bufsiz); + ldisc->buf = sresize(ldisc->buf, ldisc->bufsiz, char); } ldisc->buf[ldisc->buflen++] = c; if (ECHOING)