1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-07-02 03:52:49 -05:00

Add memsets after allocation of all Backend implementors.

Now every struct that implements the Backend trait is completely
cleared before we start initialising any of its fields. This will mean
I can add new fields that default to 0 or NULL, without having to mess
around initialising them explicitly everywhere.
This commit is contained in:
Simon Tatham
2021-10-30 14:51:24 +01:00
parent 27f00038e1
commit 76dc28552c
8 changed files with 8 additions and 0 deletions

View File

@ -156,6 +156,7 @@ static char *raw_init(const BackendVtable *vt, Seat *seat,
char *loghost;
raw = snew(Raw);
memset(raw, 0, sizeof(Raw));
raw->plug.vt = &Raw_plugvt;
raw->backend.vt = vt;
raw->s = NULL;

View File

@ -233,6 +233,7 @@ static char *rlogin_init(const BackendVtable *vt, Seat *seat,
char *loghost;
rlogin = snew(Rlogin);
memset(rlogin, 0, sizeof(Rlogin));
rlogin->plug.vt = &Rlogin_plugvt;
rlogin->backend.vt = vt;
rlogin->s = NULL;

View File

@ -683,6 +683,7 @@ static char *supdup_init(const BackendVtable *x, Seat *seat,
const char *utf8 = "\033%G";
supdup = snew(struct supdup_tag);
memset(supdup, 0, sizeof(Supdup));
supdup->plug.vt = &fn_table;
supdup->backend.vt = &supdup_backend;
supdup->logctx = logctx;

View File

@ -721,6 +721,7 @@ static char *telnet_init(const BackendVtable *vt, Seat *seat,
int addressfamily;
telnet = snew(Telnet);
memset(telnet, 0, sizeof(Telnet));
telnet->plug.vt = &Telnet_plugvt;
telnet->backend.vt = vt;
telnet->conf = conf_copy(conf);