X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/33b1edda1f3fa65f5cad3b8a73cdc2fd61558ec9..3d5040f8f85f049cbb072a827a6184b4b4314b08:/windows/winctrls.c diff --git a/windows/winctrls.c b/windows/winctrls.c index 60e32f5e..72d462ed 100644 --- a/windows/winctrls.c +++ b/windows/winctrls.c @@ -448,6 +448,8 @@ char *staticwrap(struct ctlpos *cp, HWND hwnd, char *text, int *lines) if (lines) *lines = nlines; + sfree(pwidths); + return ret; } @@ -1291,6 +1293,7 @@ void winctrl_remove(struct winctrls *wc, struct winctrl *c) { struct winctrl *ret; ret = del234(wc->byctrl, c); + assert(ret == c); ret = del234(wc->byid, c); assert(ret == c); } @@ -1665,7 +1668,9 @@ void winctrl_layout(struct dlgparam *dp, struct winctrls *wc, winctrl_add_shortcuts(dp, c); if (actual_base_id == base_id) base_id += num_ids; - } + } else { + sfree(data); + } if (colstart >= 0) { /*