Fixed a latent bug in Tab.InsertAt() where inserted controls are appended to t.children, causing issues during Tab.Destroy().
This commit is contained in:
parent
38c3288c6b
commit
e7e3ea0529
7
tab.go
7
tab.go
|
@ -94,7 +94,12 @@ func (t *Tab) InsertAt(name string, n int, child Control) {
|
||||||
// TODO why is this uintmax_t and not intmax_t
|
// TODO why is this uintmax_t and not intmax_t
|
||||||
C.uiTabInsertAt(t.t, cname, C.uintmax_t(n), c)
|
C.uiTabInsertAt(t.t, cname, C.uintmax_t(n), c)
|
||||||
freestr(cname)
|
freestr(cname)
|
||||||
t.children = append(t.children, child)
|
ch := make([]Control, len(t.children) + 1)
|
||||||
|
// and insert into t.children at the right place
|
||||||
|
copy(ch[:n], t.children[:n])
|
||||||
|
ch[n] = child
|
||||||
|
copy(ch[n + 1:], t.children[n:])
|
||||||
|
t.children = ch
|
||||||
}
|
}
|
||||||
|
|
||||||
// Delete deletes the nth page of the Tab.
|
// Delete deletes the nth page of the Tab.
|
||||||
|
|
Loading…
Reference in New Issue