aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--calendar/ChangeLog8
-rw-r--r--calendar/cal-util/cal-component.c20
-rw-r--r--calendar/gui/calendar-model.c2
3 files changed, 22 insertions, 8 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog
index 2dd696c344..2c8ef1d3e4 100644
--- a/calendar/ChangeLog
+++ b/calendar/ChangeLog
@@ -1,3 +1,11 @@
+2001-05-04 JP Rosevear <jpr@ximian.com>
+
+ * gui/calendar-model.c (calendar_model_append_row): unref the
+ calcomponent when we're done with it
+
+ * cal-util/cal-component.c (cal_component_gen_uid): free the iso
+ date string when we finish with it
+
2001-04-27 JP Rosevear <jpr@ximian.com>
* gui/e-meeting-edit.c (put_property_in_list): remove hardcoded
diff --git a/calendar/cal-util/cal-component.c b/calendar/cal-util/cal-component.c
index b7aeef7a8c..237bf56842 100644
--- a/calendar/cal-util/cal-component.c
+++ b/calendar/cal-util/cal-component.c
@@ -331,6 +331,7 @@ cal_component_destroy (GtkObject *object)
char *
cal_component_gen_uid (void)
{
+ char *iso, *ret;
static char *hostname;
time_t t = time (NULL);
static int serial;
@@ -345,14 +346,17 @@ cal_component_gen_uid (void)
hostname = "localhost";
}
- return g_strdup_printf (
- "%s-%d-%d-%d-%d@%s",
- isodate_from_time_t (t),
- getpid (),
- getgid (),
- getppid (),
- serial++,
- hostname);
+ iso = isodate_from_time_t (t);
+ ret = g_strdup_printf ("%s-%d-%d-%d-%d@%s",
+ iso,
+ getpid (),
+ getgid (),
+ getppid (),
+ serial++,
+ hostname);
+ g_free (iso);
+
+ return ret;
}
/**
diff --git a/calendar/gui/calendar-model.c b/calendar/gui/calendar-model.c
index b9c11e16ef..d3b95e5054 100644
--- a/calendar/gui/calendar-model.c
+++ b/calendar/gui/calendar-model.c
@@ -1365,6 +1365,8 @@ calendar_model_append_row (ETableModel *etm, ETableModel *source, gint row)
/* FIXME: Show error dialog. */
g_message ("calendar_model_append_row(): Could not add new object!");
}
+
+ gtk_object_unref (GTK_OBJECT (comp));
}
/* Duplicates a string value */