+ if (param != NULL) {
+ tzid = icalparameter_get_tzid(param);
+
+ /* Convert it to an icaltimezone type. */
+ if (tzid != NULL) {
+#ifdef DBG_ICAL
+ syslog(LOG_DEBUG, " * Stringy supplied timezone is: '%s'\n", tzid);
+#endif
+ if ( (!strcasecmp(tzid, "UTC")) || (!strcasecmp(tzid, "GMT")) ) {
+ utc_declared_as_tzid = 1;
+#ifdef DBG_ICAL
+ syslog(LOG_DEBUG, " * ...and we handle that internally.\n");
+#endif
+ }
+ else {
+ /* try attached first */
+ t = icalcomponent_get_timezone(cal, tzid);
+#ifdef DBG_ICAL
+ syslog(LOG_DEBUG, " * ...and I %s have tzdata for that zone.\n",
+ (t ? "DO" : "DO NOT")
+ );
+#endif
+ /* then try built-in timezones */
+ if (!t) {
+ t = icaltimezone_get_builtin_timezone(tzid);
+#ifdef DBG_ICAL
+ if (t) {
+ syslog(LOG_DEBUG, " * Using system tzdata!\n");
+ }
+#endif
+ }
+ }
+ }