Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch aku-mem-debug-allow-regular Excluding Merge-Ins
This is equivalent to a diff from 40cc6d8f3b to c8a862480b
2015-05-27
| ||
18:25 | Make tweak to the mem-debug tracking official. It is now again possible to use regular packages with... check-in: 38ddcfe658 user: andreask tags: core-8-5-branch | |
2015-05-22
| ||
23:26 | Minor compilation issue fix, make sure variable declaration (via macro) is first. Closed-Leaf check-in: c8a862480b user: mistachkin tags: aku-mem-debug-allow-regular | |
20:21 | Moved Tcl_Obj* objThreadMap release tracking to a location where regular packages will call through,... check-in: 1f5c53bf5d user: andreask tags: aku-mem-debug-allow-regular | |
2013-04-04
| ||
17:08 | Allow URLs that don't have a path, but a query, e.g. http://example.com?foo=bar and bump http to 2.... check-in: e47216d06d user: max tags: core-8-5-branch | |
07:07 | Make Tcl_EvalObj/Tcl_GlobalEvalObj a macro always, not only when using stubs. check-in: 45d8edf1bb user: jan.nijtmans tags: trunk | |
07:03 | Make Tcl_EvalObj/Tcl_GlobalEvalObj a macro always, not only when using stubs. check-in: 40cc6d8f3b user: jan.nijtmans tags: core-8-5-branch | |
2013-04-03
| ||
20:48 | some more "ignore-glob" patterns check-in: ce6095ab91 user: jan.nijtmans tags: core-8-5-branch | |
Changes to generic/tclObj.c.
︙ | ︙ | |||
1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 | /* * This macro declares a variable, so must come here... */ ObjInitDeletionContext(context); /* * Check for a double free of the same value. This is slightly tricky * because it is customary to free a Tcl_Obj when its refcount falls * either from 1 to 0, or from 0 to -1. Falling from -1 to -2, though, * and so on, is always a sign of a botch in the caller. */ if (objPtr->refCount < -1) { | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 | /* * This macro declares a variable, so must come here... */ ObjInitDeletionContext(context); # ifdef TCL_THREADS /* * Check to make sure that the Tcl_Obj was allocated by the current * thread. Don't do this check when shutting down since thread local * storage can be finalized before the last Tcl_Obj is freed. */ if (!TclInExit()) { Tcl_HashTable *tablePtr; Tcl_HashEntry *hPtr; ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey); tablePtr = tsdPtr->objThreadMap; if (!tablePtr) { Tcl_Panic("TclFreeObj: object table not initialized"); } hPtr = Tcl_FindHashEntry(tablePtr, (char *) objPtr); if (hPtr) { /* * As the Tcl_Obj is going to be deleted we remove the entry. */ ObjData *objData = Tcl_GetHashValue(hPtr); if (objData != NULL) { ckfree((char *) objData); } Tcl_DeleteHashEntry(hPtr); } } # endif /* * Check for a double free of the same value. This is slightly tricky * because it is customary to free a Tcl_Obj when its refcount falls * either from 1 to 0, or from 0 to -1. Falling from -1 to -2, though, * and so on, is always a sign of a botch in the caller. */ if (objPtr->refCount < -1) { |
︙ | ︙ | |||
3711 3712 3713 3714 3715 3716 3717 | } hPtr = Tcl_FindHashEntry(tablePtr, (char *) objPtr); if (!hPtr) { Tcl_Panic("%s%s", "Trying to decr ref count of " "Tcl_Obj allocated in another thread"); } | < < < < < < < < < < < < < < | 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 | } hPtr = Tcl_FindHashEntry(tablePtr, (char *) objPtr); if (!hPtr) { Tcl_Panic("%s%s", "Trying to decr ref count of " "Tcl_Obj allocated in another thread"); } } # endif #endif if (--(objPtr)->refCount <= 0) { TclFreeObj(objPtr); } } |
︙ | ︙ |