Tk Source Code

Check-in [947fbbd8]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Fix [d5a3b86f3a]: tablelist widget with header items and title columns crashes when run with revised_text.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | revised_text | tip-466
Files: files | file ages | folders
SHA3-256: 947fbbd8f855b793b4e3eb2fffdb9ec539c53888597ccd9d9451aa745b16b7b6
User & Date: fvogel 2024-11-17 18:25:28
References
2024-11-17
18:29 Closed ticket [d5a3b86f]: tablelist widget with header items and title columns crashes when run with revised_text plus 6 other changes artifact: c29bc822 user: fvogel
Context
2024-11-22
20:43
Add semicolons needed to fix the build when the NEW_SEGMENT macro is used. check-in: 0a0a44ba user: fvogel tags: revised_text, tip-466
2024-11-17
18:25
Fix [d5a3b86f3a]: tablelist widget with header items and title columns crashes when run with revised_text. check-in: 947fbbd8 user: fvogel tags: revised_text, tip-466
2024-11-15
23:37
Remove superfluous #include (already included in tkText.h). check-in: 6581ca91 user: fvogel tags: revised_text, tip-466
Changes
Unified Diff Ignore Whitespace Patch
Changes to generic/tkTextDisp.c.
7167
7168
7169
7170
7171
7172
7173




7174
7175
7176
7177
7178
7179
7180
    const TkRange *range;
    unsigned totalLines = TkrBTreeNumLines(textPtr->sharedTextPtr->tree, textPtr);
    int fullUpdateRequested = (lineNum == 0 && endLine == totalLines);

    assert(lineNum <= endLine);
    assert(endLine <= totalLines);
    assert(textPtr->sharedTextPtr->allowUpdateLineMetrics);





    dInfoPtr->insideLineMetricUpdate = 1;

    if ((range = TkRangeListFindNearest(dInfoPtr->lineMetricUpdateRanges, lineNum))) {
	TkTextLine *linePtr = NULL;
	unsigned count = 0;
	unsigned high = range->high;







>
>
>
>







7167
7168
7169
7170
7171
7172
7173
7174
7175
7176
7177
7178
7179
7180
7181
7182
7183
7184
    const TkRange *range;
    unsigned totalLines = TkrBTreeNumLines(textPtr->sharedTextPtr->tree, textPtr);
    int fullUpdateRequested = (lineNum == 0 && endLine == totalLines);

    assert(lineNum <= endLine);
    assert(endLine <= totalLines);
    assert(textPtr->sharedTextPtr->allowUpdateLineMetrics);

    if (dInfoPtr->flags & DINFO_OUT_OF_DATE) {
	UpdateDisplayInfo(textPtr);
    }

    dInfoPtr->insideLineMetricUpdate = 1;

    if ((range = TkRangeListFindNearest(dInfoPtr->lineMetricUpdateRanges, lineNum))) {
	TkTextLine *linePtr = NULL;
	unsigned count = 0;
	unsigned high = range->high;