summaryrefslogtreecommitdiffstats
path: root/generic/tkTreeItem.c
diff options
context:
space:
mode:
authortreectrl <treectrl>2006-10-26 03:03:16 (GMT)
committertreectrl <treectrl>2006-10-26 03:03:16 (GMT)
commit2028de05cba76d90bfc166ef8ac8a4fcd7eb4b48 (patch)
treeb6594d1373bc1249d66106670e0dfa941f5a74d2 /generic/tkTreeItem.c
parenta3f289609685a070bec77addfaf581d00e607e50 (diff)
downloadtktreectrl-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/tkTreeItem.c')
-rw-r--r--generic/tkTreeItem.c10
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)