1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-03-22 14:39:24 -05:00

Merge share_receive fix from 'pre-0.79'.

This commit is contained in:
Simon Tatham 2023-08-19 10:26:17 +01:00
commit 29fef36f3e

View File

@ -1770,7 +1770,7 @@ static void share_receive(Plug *plug, int urgent, const char *data, size_t len)
char *buf = dupprintf("Version string far too long\n"); char *buf = dupprintf("Version string far too long\n");
share_disconnect(cs, buf); share_disconnect(cs, buf);
sfree(buf); sfree(buf);
goto dead; return;
} }
cs->recvbuf[cs->recvlen++] = c; cs->recvbuf[cs->recvlen++] = c;
} }
@ -1785,7 +1785,7 @@ static void share_receive(Plug *plug, int urgent, const char *data, size_t len)
char *buf = dupprintf("Version string did not have expected prefix\n"); char *buf = dupprintf("Version string did not have expected prefix\n");
share_disconnect(cs, buf); share_disconnect(cs, buf);
sfree(buf); sfree(buf);
goto dead; return;
} }
if (cs->recvlen > 0 && cs->recvbuf[cs->recvlen-1] == '\015') if (cs->recvlen > 0 && cs->recvbuf[cs->recvlen-1] == '\015')
cs->recvlen--; /* trim off \r before \n */ cs->recvlen--; /* trim off \r before \n */
@ -1810,7 +1810,7 @@ static void share_receive(Plug *plug, int urgent, const char *data, size_t len)
(unsigned)cs->curr_packetlen); (unsigned)cs->curr_packetlen);
share_disconnect(cs, buf); share_disconnect(cs, buf);
sfree(buf); sfree(buf);
goto dead; return;
} }
while (cs->recvlen < cs->curr_packetlen) { while (cs->recvlen < cs->curr_packetlen) {
crGetChar(c); crGetChar(c);
@ -1821,7 +1821,6 @@ static void share_receive(Plug *plug, int urgent, const char *data, size_t len)
cs->recvbuf + 5, cs->recvlen - 5); cs->recvbuf + 5, cs->recvlen - 5);
} }
dead:;
crFinishV; crFinishV;
} }