Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Better identify the output of TK_CHECK_ALLOCS results from tkText and tkTextDisp. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | revised_text | tip-466 |
Files: | files | file ages | folders |
SHA3-256: |
23b87937c0d70a97618e9e944bb90332 |
User & Date: | fvogel 2024-12-07 11:17:16 |
Context
2024-12-07
| ||
11:18 | Fix [a67252b384]: Memory leak when running the revised_text test suite. check-in: ce75c788 user: fvogel tags: revised_text, tip-466 | |
11:17 | Better identify the output of TK_CHECK_ALLOCS results from tkText and tkTextDisp. check-in: 23b87937 user: fvogel tags: revised_text, tip-466 | |
2024-12-05
| ||
21:32 | Make revised_text build when TK_CHECK_ALLOCS is defined. check-in: 3bd14b19 user: fvogel tags: revised_text, tip-466 | |
Changes
Changes to generic/tkText.c.
︙ | ︙ | |||
640 641 642 643 644 645 646 | for (peer = wShared->sharedTextPtr->peers; peer; peer = peer->next) { fprintf(stderr, "Unreleased text widget %zd\n", peer->widgetNumber); } } fprintf(stderr, "---------------------------------\n"); | | | 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 | for (peer = wShared->sharedTextPtr->peers; peer; peer = peer->next) { fprintf(stderr, "Unreleased text widget %zd\n", peer->widgetNumber); } } fprintf(stderr, "---------------------------------\n"); fprintf(stderr, "tkText ALLOCS: new destroy\n"); fprintf(stderr, "---------------------------------\n"); fprintf(stderr, "Shared: %8u - %8u\n", tkTextCountNewShared, tkTextCountDestroyShared); fprintf(stderr, "Peer: %8u - %8u\n", tkTextCountNewPeer, tkTextCountDestroyPeer); fprintf(stderr, "Segment: %8u - %8u\n", tkTextCountNewSegment, tkTextCountDestroySegment); fprintf(stderr, "Tag: %8u - %8u\n", tkTextCountNewTag, tkTextCountDestroyTag); fprintf(stderr, "UndoToken: %8u - %8u\n", tkTextCountNewUndoToken, tkTextCountDestroyUndoToken); fprintf(stderr, "Node: %8u - %8u\n", tkTextCountNewNode, tkTextCountDestroyNode); |
︙ | ︙ | |||
4601 4602 4603 4604 4605 4606 4607 | textPtr->selAttrs = textPtr->textConfigAttrs; Tk_FreeConfigOptions(textPtr, textPtr->optionTable, textPtr->tkwin); textPtr->flags |= OPTIONS_FREED; } textPtr->flags |= DESTROYED; /* | | | 4601 4602 4603 4604 4605 4606 4607 4608 4609 4610 4611 4612 4613 4614 4615 | textPtr->selAttrs = textPtr->textConfigAttrs; Tk_FreeConfigOptions(textPtr, textPtr->optionTable, textPtr->tkwin); textPtr->flags |= OPTIONS_FREED; } textPtr->flags |= DESTROYED; /* * Call 'DestroyText' to handle the deletion for us. The actual * textPtr may still exist after this, if there are some outstanding * references. But we have flagged it as DESTROYED just above, so * nothing will try to make use of it very extensively. */ DestroyText(textPtr); } |
︙ | ︙ |
Changes to generic/tkTextDisp.c.
︙ | ︙ | |||
906 907 908 909 910 911 912 | AllocStatistic(void) { if (!tkBTreeDebug) { return; } fprintf(stderr, "--------------------------------\n"); | | | 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 | AllocStatistic(void) { if (!tkBTreeDebug) { return; } fprintf(stderr, "--------------------------------\n"); fprintf(stderr, "tkTextDisp ALLOCS:new destroy\n"); fprintf(stderr, "--------------------------------\n"); fprintf(stderr, "DLine: %8u - %8u\n", tkTextCountNewDLine, tkTextCountDestroyDLine); fprintf(stderr, "Chunk: %8u - %8u\n", tkTextCountNewChunk, tkTextCountDestroyChunk); fprintf(stderr, "Section: %8u - %8u\n", tkTextCountNewSection, tkTextCountDestroySection); fprintf(stderr, "CharInfo: %8u - %8u\n", tkTextCountNewCharInfo, tkTextCountDestroyCharInfo); fprintf(stderr, "DispInfo: %8u - %8u\n", tkTextCountNewDispInfo, tkTextCountDestroyDispInfo); fprintf(stderr, "BreakInfo: %8u - %8u\n", tkTextCountNewBreakInfo, tkTextCountDestroyBreakInfo); |
︙ | ︙ |