diff options
author | treectrl <treectrl> | 2006-10-26 03:03:16 (GMT) |
---|---|---|
committer | treectrl <treectrl> | 2006-10-26 03:03:16 (GMT) |
commit | 2028de05cba76d90bfc166ef8ac8a4fcd7eb4b48 (patch) | |
tree | b6594d1373bc1249d66106670e0dfa941f5a74d2 /generic | |
parent | a3f289609685a070bec77addfaf581d00e607e50 (diff) | |
download | tktreectrl-2028de05cba76d90bfc166ef8ac8a4fcd7eb4b48.zip tktreectrl-2028de05cba76d90bfc166ef8ac8a4fcd7eb4b48.tar.gz tktreectrl-2028de05cba76d90bfc166ef8ac8a4fcd7eb4b48.tar.bz2 |
Don't allocate an item-column if setting its style to NULL.
Diffstat (limited to 'generic')
-rw-r--r-- | generic/tkTreeItem.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/generic/tkTreeItem.c b/generic/tkTreeItem.c index 252cd16..1b4ffe6 100644 --- a/generic/tkTreeItem.c +++ b/generic/tkTreeItem.c @@ -5,7 +5,7 @@ * * Copyright (c) 2002-2006 Tim Baker * - * RCS: @(#) $Id: tkTreeItem.c,v 1.70 2006/10/16 01:25:47 treectrl Exp $ + * RCS: @(#) $Id: tkTreeItem.c,v 1.71 2006/10/26 03:03:16 treectrl Exp $ */ #include "tkTreeCtrl.h" @@ -5409,14 +5409,16 @@ doneMAP: for (i = 0; i < count; i++) { COLUMN_FOR_EACH(treeColumn, &cs[i].columns, NULL, &citer) { if (treeColumn == tree->columnTail) continue; /* FIXME */ - column = Item_CreateColumn(tree, item, - TreeColumn_Index(treeColumn), NULL); if (cs[i].style == NULL) { - if (column->style == NULL) + column = Item_FindColumn(tree, item, + TreeColumn_Index(treeColumn)); + if (column == NULL || column->style == NULL) continue; TreeItemColumn_ForgetStyle(tree, (TreeItemColumn) column); } else { + column = Item_CreateColumn(tree, item, + TreeColumn_Index(treeColumn), NULL); if (column->style != NULL) { if (TreeStyle_GetMaster(tree, column->style) == cs[i].style) |