~mdw
/
sgt
/
putty
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Missing assert.
[sgt/putty]
/
windows
/
winctrls.c
diff --git
a/windows/winctrls.c
b/windows/winctrls.c
index
c9300cd
..
72d462e
100644
(file)
--- 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;
if (lines) *lines = nlines;
+ sfree(pwidths);
+
return ret;
}
return ret;
}
@@
-1291,6
+1293,7
@@
void winctrl_remove(struct winctrls *wc, struct winctrl *c)
{
struct winctrl *ret;
ret = del234(wc->byctrl, c);
{
struct winctrl *ret;
ret = del234(wc->byctrl, c);
+ assert(ret == c);
ret = del234(wc->byid, 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;
winctrl_add_shortcuts(dp, c);
if (actual_base_id == base_id)
base_id += num_ids;
- }
+ } else {
+ sfree(data);
+ }
if (colstart >= 0) {
/*
if (colstart >= 0) {
/*
@@
-2366,6
+2371,8
@@
void dlg_set_focus(union control *ctrl, void *dlg)
struct winctrl *c = dlg_findbyctrl(dp, ctrl);
int id;
HWND ctl;
struct winctrl *c = dlg_findbyctrl(dp, ctrl);
int id;
HWND ctl;
+ if (!c)
+ return;
switch (ctrl->generic.type) {
case CTRL_EDITBOX: id = c->base_id + 1; break;
case CTRL_RADIO:
switch (ctrl->generic.type) {
case CTRL_EDITBOX: id = c->base_id + 1; break;
case CTRL_RADIO: