Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch bug-75b8433707 Excluding Merge-Ins
This is equivalent to a diff from 17150b71d2 to 23be32a082
|
2014-07-19
| ||
| 16:35 | [75b8433707] Revised fix for memleak in oo instance list management. check-in: 98d8d28e03 user: dgp tags: trunk | |
|
2014-07-18
| ||
| 22:05 | [75b8433707] Plug a subtle memory leak in TclOO. Test suite very unhappy with this. Shoving into... Closed-Leaf check-in: 23be32a082 user: dkf tags: bug-75b8433707 | |
| 12:22 | merge trunk check-in: e2f47cd58e user: dkf tags: dkf-http-cookies | |
| 12:18 | [b43f2b49f7] New compilation strategy for lappend that allows multi-value lappend to not have quadra... check-in: 17150b71d2 user: dkf tags: trunk | |
|
2014-07-17
| ||
| 18:43 | Finally, use correct octal notation which works in Tcl 9 as well. check-in: 838e8dcfd4 user: jan.nijtmans tags: trunk | |
Changes to generic/tclOO.c.
| ︙ | ︙ | |||
1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 |
goto removeInstance;
}
}
return;
removeInstance:
if (Deleted(clsPtr->thisPtr)) {
clsPtr->instances.list[i] = NULL;
} else {
clsPtr->instances.num--;
if (i < clsPtr->instances.num) {
clsPtr->instances.list[i] =
clsPtr->instances.list[clsPtr->instances.num];
}
| > | 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 |
goto removeInstance;
}
}
return;
removeInstance:
if (Deleted(clsPtr->thisPtr)) {
DelRef(clsPtr->instances.list[i]);
clsPtr->instances.list[i] = NULL;
} else {
clsPtr->instances.num--;
if (i < clsPtr->instances.num) {
clsPtr->instances.list[i] =
clsPtr->instances.list[clsPtr->instances.num];
}
|
| ︙ | ︙ |
Changes to tests/oo.test.
| ︙ | ︙ | |||
254 255 256 257 258 259 260 261 262 263 264 265 266 267 |
} -body {
oo::define B constructor {} {A create test-oo-1.18}
B create C
} -cleanup {
rename test-oo-1.18 {}
A destroy
} -result ::C
test oo-1.19 {basic test of OO functionality: teardown order} -body {
oo::object create o
namespace delete [info object namespace o]
o destroy
# Crashes on error
} -returnCodes error -result {invalid command name "o"}
test oo-1.20 {basic test of OO functionality: my teardown post rename} -body {
| > > > > > > > > > > > > > | 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 |
} -body {
oo::define B constructor {} {A create test-oo-1.18}
B create C
} -cleanup {
rename test-oo-1.18 {}
A destroy
} -result ::C
test oo-1.18.1 {Bug 75b8433707: memory leak in oo-1.18} -setup {
proc test-oo-1.18 {} return
} -constraints memory -body {
leaktest {
oo::class create A
oo::class create B {superclass A}
oo::define B constructor {} {A create test-oo-1.18}
B create C
A destroy
}
} -cleanup {
rename test-oo-1.18 {}
} -result 0
test oo-1.19 {basic test of OO functionality: teardown order} -body {
oo::object create o
namespace delete [info object namespace o]
o destroy
# Crashes on error
} -returnCodes error -result {invalid command name "o"}
test oo-1.20 {basic test of OO functionality: my teardown post rename} -body {
|
| ︙ | ︙ |