diff --git a/res/res_calendar_caldav.c b/res/res_calendar_caldav.c
index 11650375bd82618a5526b31d6e35ea361fd362f4..8a603cf47a0f78876d19b79715dad3df1b979801 100644
--- a/res/res_calendar_caldav.c
+++ b/res/res_calendar_caldav.c
@@ -480,7 +480,7 @@ static void handle_start_element(void *data, const xmlChar *fullname, const xmlC
 {
 	struct xmlstate *state = data;
 
-	if (!xmlStrcasecmp(fullname, BAD_CAST "C:calendar-data")) {
+	if (!xmlStrcasecmp(fullname, BAD_CAST "C:calendar-data") || !xmlStrcasecmp(fullname, BAD_CAST "caldav:calendar-data")) {
 		state->in_caldata = 1;
 		ast_str_reset(state->cdata);
 	}
@@ -494,7 +494,7 @@ static void handle_end_element(void *data, const xmlChar *name)
 	icalcomponent *iter;
 	icalcomponent *comp;
 
-	if (xmlStrcasecmp(name, BAD_CAST "C:calendar-data")) {
+	if (xmlStrcasecmp(name, BAD_CAST "C:calendar-data") && xmlStrcasecmp(name, BAD_CAST "caldav:calendar-data")) {
 		return;
 	}