aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--widgets/e-table/ChangeLog5
-rw-r--r--widgets/e-table/e-table-header-item.c4
-rw-r--r--widgets/e-table/e-table-header.c2
-rw-r--r--widgets/table/e-table-header-item.c4
-rw-r--r--widgets/table/e-table-header.c2
5 files changed, 11 insertions, 6 deletions
diff --git a/widgets/e-table/ChangeLog b/widgets/e-table/ChangeLog
index 0c9ee610db..e33b099234 100644
--- a/widgets/e-table/ChangeLog
+++ b/widgets/e-table/ChangeLog
@@ -1,3 +1,8 @@
+2000-02-28 Christopher James Lahey <clahey@helixcode.com>
+
+ * e-table-header-item.c, e-table-header.c: Fixed a couple of crash
+ bugs.
+
2000-02-25 Christopher James Lahey <clahey@helixcode.com>
* e-table-item.c: Made the E table item redraw properly.
diff --git a/widgets/e-table/e-table-header-item.c b/widgets/e-table/e-table-header-item.c
index 6b6146c938..0289703bf2 100644
--- a/widgets/e-table/e-table-header-item.c
+++ b/widgets/e-table/e-table-header-item.c
@@ -68,8 +68,8 @@ static GtkTargetEntry ethi_drop_types [] = {
static void
ethi_destroy (GtkObject *object){
ETableHeaderItem *ethi = E_TABLE_HEADER_ITEM (object);
-
- gtk_object_unref (GTK_OBJECT (ethi->eth));
+
+ ethi_drop_table_header (ethi);
if (GTK_OBJECT_CLASS (ethi_parent_class)->destroy)
(*GTK_OBJECT_CLASS (ethi_parent_class)->destroy) (object);
diff --git a/widgets/e-table/e-table-header.c b/widgets/e-table/e-table-header.c
index 91aa366932..b1aec7da7e 100644
--- a/widgets/e-table/e-table-header.c
+++ b/widgets/e-table/e-table-header.c
@@ -33,7 +33,7 @@ e_table_header_destroy (GtkObject *object)
/*
* Destroy columns
*/
- for (i = 0; i < cols; i++){
+ for (i = cols - 1; i >= 0; i--){
e_table_header_remove (eth, i);
}
diff --git a/widgets/table/e-table-header-item.c b/widgets/table/e-table-header-item.c
index 6b6146c938..0289703bf2 100644
--- a/widgets/table/e-table-header-item.c
+++ b/widgets/table/e-table-header-item.c
@@ -68,8 +68,8 @@ static GtkTargetEntry ethi_drop_types [] = {
static void
ethi_destroy (GtkObject *object){
ETableHeaderItem *ethi = E_TABLE_HEADER_ITEM (object);
-
- gtk_object_unref (GTK_OBJECT (ethi->eth));
+
+ ethi_drop_table_header (ethi);
if (GTK_OBJECT_CLASS (ethi_parent_class)->destroy)
(*GTK_OBJECT_CLASS (ethi_parent_class)->destroy) (object);
diff --git a/widgets/table/e-table-header.c b/widgets/table/e-table-header.c
index 91aa366932..b1aec7da7e 100644
--- a/widgets/table/e-table-header.c
+++ b/widgets/table/e-table-header.c
@@ -33,7 +33,7 @@ e_table_header_destroy (GtkObject *object)
/*
* Destroy columns
*/
- for (i = 0; i < cols; i++){
+ for (i = cols - 1; i >= 0; i--){
e_table_header_remove (eth, i);
}