Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Evergreen:11.1:kernel-2.6.32
evolution-data-server
bnc-467270-cal-busy-eds.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File bnc-467270-cal-busy-eds.patch of Package evolution-data-server
diff --git a/calendar/libecal/e-cal.c b/calendar/libecal/e-cal.c index c8f1c91..8d30735 100644 --- a/calendar/libecal/e-cal.c +++ b/calendar/libecal/e-cal.c @@ -60,6 +60,7 @@ typedef struct { gboolean bool; char *string; + char *op_str; ECalView *query; ECalViewListener *listener; } ECalendarOp; @@ -300,13 +301,14 @@ convert_type (ECalSourceType type) /* EBookOp calls */ static ECalendarOp* -e_calendar_new_op (ECal *ecal) +e_calendar_new_op (ECal *ecal, const char *str) { ECalendarOp *op = g_new0 (ECalendarOp, 1); op->done = e_flag_new (); ecal->priv->current_op = op; + op->op_str = g_strdup (str); return op; } @@ -327,6 +329,7 @@ e_calendar_free_op (ECalendarOp *op) { /* XXX more stuff here */ e_flag_free (op->done); + g_free (op->op_str); g_free (op); } @@ -1643,7 +1646,7 @@ open_calendar (ECal *ecal, gboolean only_if_exists, GError **error, ECalendarSta E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } /* start the open operation */ - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "open_calendar"); g_mutex_unlock (priv->mutex); @@ -1898,7 +1901,7 @@ e_cal_remove (ECal *ecal, GError **error) E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "cal_remove"); g_mutex_unlock (ecal->priv->mutex); @@ -2153,7 +2156,7 @@ get_read_only (ECal *ecal, gboolean *read_only, GError **error) E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_read_only"); /* set it to true so that op does not emit cond signals for all notifications from the backend */ @@ -2226,7 +2229,7 @@ e_cal_get_cal_address (ECal *ecal, char **cal_address, GError **error) E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_cal_address"); g_mutex_unlock (ecal->priv->mutex); @@ -2297,7 +2300,7 @@ e_cal_get_alarm_email_address (ECal *ecal, char **alarm_address, GError **error) E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_alarm_address"); g_mutex_unlock (ecal->priv->mutex); @@ -2364,7 +2367,7 @@ e_cal_get_ldap_attribute (ECal *ecal, char **ldap_attribute, GError **error) E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_ldap_attribute"); g_mutex_unlock (ecal->priv->mutex); @@ -2421,7 +2424,7 @@ load_static_capabilities (ECal *ecal, GError **error) E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "load_static_capabilities"); g_mutex_unlock (ecal->priv->mutex); @@ -2654,7 +2657,7 @@ e_cal_get_default_object (ECal *ecal, icalcomponent **icalcomp, GError **error) E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_default_object"); g_mutex_unlock (ecal->priv->mutex); @@ -2729,7 +2732,7 @@ e_cal_get_attachments_for_comp (ECal *ecal, const char *uid, const char *rid, GS E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_attachments_for_comp"); g_mutex_unlock (ecal->priv->mutex); @@ -2800,7 +2803,7 @@ e_cal_get_object (ECal *ecal, const char *uid, const char *rid, icalcomponent ** E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_object"); g_mutex_unlock (ecal->priv->mutex); @@ -2911,7 +2914,7 @@ e_cal_get_objects_for_uid (ECal *ecal, const char *uid, GList **objects, GError E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_objects_for_uid"); g_mutex_unlock (ecal->priv->mutex); @@ -3054,7 +3057,7 @@ e_cal_get_changes (ECal *ecal, const char *change_id, GList **changes, GError ** E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_changes"); g_mutex_unlock (ecal->priv->mutex); @@ -3148,7 +3151,7 @@ e_cal_get_object_list (ECal *ecal, const char *query, GList **objects, GError ** E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_object_list"); g_mutex_unlock (ecal->priv->mutex); @@ -3275,7 +3278,7 @@ e_cal_get_free_busy (ECal *ecal, GList *users, time_t start, time_t end, E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_freebusy"); g_mutex_unlock (ecal->priv->mutex); @@ -3744,6 +3747,7 @@ e_cal_generate_instances_for_object (ECal *ecal, icalcomponent *icalcomp, ECalComponentDateTime datetime; icaltimezone *start_zone; struct instances_info *instances_hold; + gboolean is_single_instance = FALSE; g_return_if_fail (E_IS_CAL (ecal)); g_return_if_fail (start >= 0); @@ -3755,9 +3759,12 @@ e_cal_generate_instances_for_object (ECal *ecal, icalcomponent *icalcomp, comp = e_cal_component_new (); e_cal_component_set_icalcomponent (comp, icalcomponent_new_clone (icalcomp)); + if (!e_cal_component_has_recurrences (comp)) + is_single_instance = TRUE; + /*If the backend stores it as individual instances and does not * have a master object - do not expand*/ - if (e_cal_get_static_capability (ecal, CAL_STATIC_CAPABILITY_RECURRENCES_NO_MASTER)) { + if (is_single_instance || e_cal_get_static_capability (ecal, CAL_STATIC_CAPABILITY_RECURRENCES_NO_MASTER)) { /*return the same instance */ result = (* cb) (comp, icaltime_as_timet_with_zone (icalcomponent_get_dtstart (icalcomp), ecal->priv->default_zone), @@ -4024,7 +4031,7 @@ e_cal_discard_alarm (ECal *ecal, ECalComponent *comp, const char *auid, GError * E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "discard_alarm"); g_mutex_unlock (ecal->priv->mutex); @@ -4265,7 +4272,7 @@ e_cal_create_object (ECal *ecal, icalcomponent *icalcomp, char **uid, GError **e E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "create_object"); g_mutex_unlock (ecal->priv->mutex); @@ -4346,7 +4353,7 @@ e_cal_modify_object (ECal *ecal, icalcomponent *icalcomp, CalObjModType mod, GEr E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "modify_object"); g_mutex_unlock (ecal->priv->mutex); @@ -4424,7 +4431,7 @@ e_cal_remove_object_with_mod (ECal *ecal, const char *uid, E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "remove_object_with_mod"); g_mutex_unlock (ecal->priv->mutex); @@ -4513,7 +4520,7 @@ e_cal_receive_objects (ECal *ecal, icalcomponent *icalcomp, GError **error) E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "receive_objects"); g_mutex_unlock (ecal->priv->mutex); @@ -4585,7 +4592,7 @@ e_cal_send_objects (ECal *ecal, icalcomponent *icalcomp, GList **users, icalcomp E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "send_objects"); g_mutex_unlock (ecal->priv->mutex); @@ -4672,7 +4679,7 @@ e_cal_get_timezone (ECal *ecal, const char *tzid, icaltimezone **zone, GError ** E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_timezone"); g_mutex_unlock (priv->mutex); @@ -4836,7 +4843,7 @@ e_cal_add_timezone (ECal *ecal, icaltimezone *izone, GError **error) E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "add_timezone"); g_mutex_unlock (priv->mutex); @@ -4923,7 +4930,7 @@ e_cal_get_query (ECal *ecal, const char *sexp, ECalView **query, GError **error) E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "get_query"); g_mutex_unlock (ecal->priv->mutex); @@ -4995,7 +5002,7 @@ e_cal_set_default_timezone (ECal *ecal, icaltimezone *zone, GError **error) E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_BUSY, error); } - our_op = e_calendar_new_op (ecal); + our_op = e_calendar_new_op (ecal, "set_default_timezone"); g_mutex_unlock (priv->mutex);
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor