initialize to NULL some pointers

2001-07-27  Rodrigo Moya <rodrigo@ximian.com>

	* gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event):
	* gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event):
	* gui/e-week-view-event-item.c (e_week_view_event_item_draw_icons):
	initialize to NULL some pointers

	* e-calendar-table.c (selection_received): deal correctly with
	VCALENDAR objects
	(e_calendar_table_copy_clipboard): g_strdup the value returned by
	icalcomponent_get_as_ical_string

svn path=/trunk/; revision=11459
This commit is contained in:
Rodrigo Moya
2001-07-27 20:50:11 +00:00
committed by Rodrigo Moya
parent 478eaf8539
commit dc3aaa74ed
5 changed files with 78 additions and 20 deletions

View File

@ -1,3 +1,15 @@
2001-07-27 Rodrigo Moya <rodrigo@ximian.com>
* gui/e-day-view-main-item.c (e_day_view_main_item_draw_day_event):
* gui/e-day-view-top-item.c (e_day_view_top_item_draw_long_event):
* gui/e-week-view-event-item.c (e_week_view_event_item_draw_icons):
initialize to NULL some pointers
* e-calendar-table.c (selection_received): deal correctly with
VCALENDAR objects
(e_calendar_table_copy_clipboard): g_strdup the value returned by
icalcomponent_get_as_ical_string
2001-07-27 Federico Mena Quintero <federico@ximian.com>
* gui/gnome-cal.c (gnome_calendar_set_query): Constify and set the

View File

@ -528,8 +528,10 @@ e_calendar_table_destroy (GtkObject *object)
if (cal_table->invisible)
gtk_widget_destroy (cal_table->invisible);
if (cal_table->clipboard_selection)
if (cal_table->clipboard_selection) {
g_free (cal_table->clipboard_selection);
cal_table->clipboard_selection = NULL;
}
GTK_OBJECT_CLASS (parent_class)->destroy (object);
}
@ -712,10 +714,10 @@ copy_row_cb (int model_row, gpointer data)
/* add the new component to the VCALENDAR component */
comp_str = cal_component_get_as_string (comp);
child = icalcomponent_new_from_string (comp_str);
icalcomponent_add_component (cal_table->tmp_vcal, child);
child = icalparser_parse_string (comp_str);
if (child)
icalcomponent_add_component (cal_table->tmp_vcal, child);
//icalcomponent_free (child);
g_free (comp_str);
}
@ -729,6 +731,7 @@ void
e_calendar_table_copy_clipboard (ECalendarTable *cal_table)
{
ETable *etable;
char *comp_str;
g_return_if_fail (E_IS_CALENDAR_TABLE (cal_table));
@ -743,7 +746,8 @@ e_calendar_table_copy_clipboard (ECalendarTable *cal_table)
etable = e_table_scrolled_get_table (E_TABLE_SCROLLED (cal_table->etable));
e_table_selected_row_foreach (etable, copy_row_cb, cal_table);
cal_table->clipboard_selection = icalcomponent_as_ical_string (cal_table->tmp_vcal);
comp_str = icalcomponent_as_ical_string (cal_table->tmp_vcal);
cal_table->clipboard_selection = g_strdup (comp_str);
icalcomponent_free (cal_table->tmp_vcal);
cal_table->tmp_vcal = NULL;
@ -1027,16 +1031,58 @@ selection_received (GtkWidget *invisible,
return;
}
comp = cal_component_new ();
cal_component_set_icalcomponent (comp, icalcomp);
uid = cal_component_gen_uid ();
cal_component_set_uid (comp, (const char *) uid);
free (uid);
if (kind == ICAL_VCALENDAR_COMPONENT) {
int num_found = 0;
icalcomponent_kind child_kind;
icalcomponent *subcomp;
cal_client_update_object (
calendar_model_get_cal_client (cal_table->model),
comp);
gtk_object_unref (GTK_OBJECT (comp));
subcomp = icalcomponent_get_first_component (
icalcomp, ICAL_ANY_COMPONENT);
while (subcomp) {
child_kind = icalcomponent_isa (subcomp);
if (child_kind == ICAL_VEVENT_COMPONENT ||
child_kind == ICAL_VTODO_COMPONENT ||
child_kind == ICAL_VJOURNAL_COMPONENT) {
CalComponent *tmp_comp;
uid = cal_component_gen_uid ();
tmp_comp = cal_component_new ();
cal_component_set_icalcomponent (
tmp_comp, icalcomponent_new_clone (subcomp));
cal_component_set_uid (tmp_comp, uid);
free (uid);
gtk_object_unref (GTK_OBJECT (tmp_comp));
num_found++;
}
subcomp = icalcomponent_get_next_component (
icalcomp, ICAL_ANY_COMPONENT);
}
if (num_found) {
comp = cal_component_new ();
cal_component_set_icalcomponent (comp, icalcomp);
cal_client_update_object (
calendar_model_get_cal_client (cal_table->model),
comp);
gtk_object_unref (GTK_OBJECT (comp));
}
}
else {
comp = cal_component_new ();
cal_component_set_icalcomponent (comp, icalcomp);
uid = cal_component_gen_uid ();
cal_component_set_uid (comp, (const char *) uid);
free (uid);
cal_client_update_object (
calendar_model_get_cal_client (cal_table->model),
comp);
gtk_object_unref (GTK_OBJECT (comp));
}
}

View File

@ -663,8 +663,8 @@ e_day_view_main_item_draw_day_event (EDayViewMainItem *dvmitem,
/* draw categories icons */
for (elem = categories_list; elem; elem = elem->next) {
char *category;
GdkPixmap *pixmap;
GdkBitmap *mask;
GdkPixmap *pixmap = NULL;
GdkBitmap *mask = NULL;
category = (char *) elem->data;
e_categories_config_get_icon_for (category, &pixmap, &mask);

View File

@ -584,8 +584,8 @@ e_day_view_top_item_draw_long_event (EDayViewTopItem *dvtitem,
cal_component_get_categories_list (comp, &categories_list);
for (elem = categories_list; elem; elem = elem->next) {
char *category;
GdkPixmap *pixmap;
GdkBitmap *mask;
GdkPixmap *pixmap = NULL;
GdkBitmap *mask = NULL;
category = (char *) elem->data;
e_categories_config_get_icon_for (category, &pixmap, &mask);

View File

@ -631,8 +631,8 @@ e_week_view_event_item_draw_icons (EWeekViewEventItem *wveitem,
/* draw categories icons */
for (elem = categories_list; elem; elem = elem->next) {
char *category;
GdkPixmap *pixmap;
GdkBitmap *mask;
GdkPixmap *pixmap = NULL;
GdkBitmap *mask = NULL;
category = (char *) elem->data;
e_categories_config_get_icon_for (category, &pixmap, &mask);