evolution r34976 - in trunk/calendar: . conduits/calendar gui/alarm-notify



Author: mcrha
Date: Fri Feb  8 09:49:51 2008
New Revision: 34976
URL: http://svn.gnome.org/viewvc/evolution?rev=34976&view=rev

Log:
2008-02-08  Milan Crha  <mcrha redhat com>

	** Part of fixes for bug #395939

	* gui/alarm-notify/alarm-queue.c: (update_cqa):
	* conduits/calendar/calendar-conduit.c: (local_record_from_comp):
	Free alarm properly.



Modified:
   trunk/calendar/ChangeLog
   trunk/calendar/conduits/calendar/calendar-conduit.c
   trunk/calendar/gui/alarm-notify/alarm-queue.c

Modified: trunk/calendar/conduits/calendar/calendar-conduit.c
==============================================================================
--- trunk/calendar/conduits/calendar/calendar-conduit.c	(original)
+++ trunk/calendar/conduits/calendar/calendar-conduit.c	Fri Feb  8 09:49:51 2008
@@ -1104,6 +1104,7 @@
 		for (l = uids; l != NULL; l = l->next) {
 			alarm = e_cal_component_get_alarm (comp, l->data);
 			e_cal_component_alarm_get_trigger (alarm, &trigger);
+			e_cal_component_alarm_free (alarm);
 
 			if ((trigger.type == E_CAL_COMPONENT_ALARM_TRIGGER_RELATIVE_START
 			     && trigger.u.rel_duration.is_neg)) {
@@ -1136,7 +1137,6 @@
 				local->appt->alarm = 1;
 				break;
 			}
-			e_cal_component_alarm_free (alarm);
 		}
 		cal_obj_uid_list_free (uids);
 	}

Modified: trunk/calendar/gui/alarm-notify/alarm-queue.c
==============================================================================
--- trunk/calendar/gui/alarm-notify/alarm-queue.c	(original)
+++ trunk/calendar/gui/alarm-notify/alarm-queue.c	Fri Feb  8 09:49:51 2008
@@ -2179,11 +2179,16 @@
 	for (qa_list = cqa->queued_alarms; qa_list; qa_list = qa_list->next) {
 		QueuedAlarm *qa = qa_list->data;
 		char *check_auid = (char *) qa->instance->auid;
+		ECalComponentAlarm *alarm;
 
-		if (e_cal_component_get_alarm (newcomp, check_auid))
+		alarm = e_cal_component_get_alarm (newcomp, check_auid);
+		if (alarm) {
+			e_cal_component_alarm_free (alarm);
 			continue;
-		else {
-			if (e_cal_component_get_alarm (oldcomp, check_auid)) { /* Need to update QueuedAlarms */
+		} else {
+			alarm = e_cal_component_get_alarm (oldcomp, check_auid);
+			if (alarm) { /* Need to update QueuedAlarms */
+				e_cal_component_alarm_free (alarm);
 				if (alarms == NULL) {
 					d(printf("%s:%d (update_cqa) - No alarms found in the modified component\n",__FILE__, __LINE__));
 					break;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]