Author: juha Date: 2008-09-19 14:57:18 +0000 (Fri, 19 Sep 2008) New Revision: 27907
Modified: xfcalendar/trunk/tz_convert/tz_convert.c Log: minor cleanup. Modified: xfcalendar/trunk/tz_convert/tz_convert.c =================================================================== --- xfcalendar/trunk/tz_convert/tz_convert.c 2008-09-18 22:40:55 UTC (rev 27906) +++ xfcalendar/trunk/tz_convert/tz_convert.c 2008-09-19 14:57:18 UTC (rev 27907) @@ -460,7 +460,7 @@ /* get timezone name */ in_head = begin_timezonenames; - data.tz = in_head + abbr_i; + data.tz = (char *)in_head + abbr_i; /* ical needs the startime in the previous (=current) time, so we need to * adjust by the difference */ @@ -477,7 +477,7 @@ data.mm_diff = 0; } /* we need to remember also the previous value. Note that this is from - * dst if we are not in std and vice versa */ + * dst if we are in std and vice versa */ data.prev_gmt_offset_hh = prev.gmt_offset_hh; data.prev_gmt_offset_mm = prev.gmt_offset_mm; @@ -571,7 +571,6 @@ } void wit_write_data(int rrule_day_cnt, struct rdate_prev_data *rdate - , struct ical_timezone_data old , struct ical_timezone_data first , struct ical_timezone_data prev) { @@ -668,18 +667,12 @@ int i; struct ical_timezone_data ical_data , ical_data_prev = { {0, 0, 0, 0, 0, 0, 0}, 0, 0, 0, 0, 0, NULL, 0, 0} - , data_cur_std , data_prev_std = { {0, 0, 0, 0, 0, 0, 0}, 0, 0, 0, 0, 0, NULL, 0, 0} , data_first_std = { {0, 0, 0, 0, 0, 0, 0}, 0, 0, 0, 0, 0, NULL, 0, 0} - , data_old_std = { {0, 0, 0, 0, 0, 0, 0}, 0, 0, 0, 0, 0, NULL, 0, 0} - , data_cur_dst , data_prev_dst = { {0, 0, 0, 0, 0, 0, 0}, 0, 0, 0, 0, 0, NULL, 0, 0} - , data_first_dst = { {0, 0, 0, 0, 0, 0, 0}, 0, 0, 0, 0, 0, NULL, 0, 0} - , data_old_dst = { {0, 0, 0, 0, 0, 0, 0}, 0, 0, 0, 0, 0, NULL, 0, 0}; + , data_first_dst = { {0, 0, 0, 0, 0, 0, 0}, 0, 0, 0, 0, 0, NULL, 0, 0}; int dst_init_done = 0; - int dst_start = 0; int std_init_done = 0; - int std_start = 0; int rrule_day_cnt_dst = 0, rrule_day_cnt_dst_prev = 0; int rrule_day_cnt_std = 0, rrule_day_cnt_std_prev = 0; struct rdate_prev_data *prev_dst_data = NULL, *prev_std_data = NULL @@ -696,41 +689,34 @@ for (i = 0; i < timecnt; i++) { /***** get data *****/ ical_data = wit_get_data(i, ical_data_prev); - if (ical_data.is_dst) { - data_cur_dst = ical_data; - dst_start = 1; - } - else { - data_cur_std = ical_data; - std_start = 1; - } if (i == 0) { /* first round, do starting values */ ical_data_prev = ical_data; } - if (!dst_init_done && ical_data.is_dst) { - data_old_dst = ical_data; - data_first_dst = ical_data; - data_prev_dst = ical_data; - dst_init_done = 1; - if (debug > 0) - printf("init %d = (%s)%s", i - , ical_data.is_dst ? "dst" : "std" - , asctime(&ical_data.start_time)); - continue; /* we never write the first record */ + if (ical_data.is_dst) { + if (!dst_init_done) { + data_first_dst = ical_data; + data_prev_dst = ical_data; + dst_init_done = 1; + if (debug > 0) + printf("init %d = (%s)%s", i + , ical_data.is_dst ? "dst" : "std" + , asctime(&ical_data.start_time)); + continue; /* we never write the first record */ + } } - else if (!std_init_done && !ical_data.is_dst) { - data_old_std = ical_data; - data_first_std = ical_data; - data_prev_std = ical_data; - std_init_done = 1; - if (debug > 0) - printf("init %d = (%s)%s", i - , ical_data.is_dst ? "dst" : "std" - , asctime(&ical_data.start_time)); - continue; + else { /* !dst == std */ + if (!std_init_done) { + data_first_std = ical_data; + data_prev_std = ical_data; + std_init_done = 1; + if (debug > 0) + printf("init %d = (%s)%s", i + , ical_data.is_dst ? "dst" : "std" + , asctime(&ical_data.start_time)); + continue; /* we never write the first record */ + } } - /***** check if we need this data *****/ /* we only take newer than threshold values */ if (ical_data.start_time.tm_year + 1900 <= ignore_older) { @@ -740,14 +726,12 @@ , asctime(&ical_data.start_time)); ical_data_prev = ical_data; if (ical_data.is_dst) { - data_old_dst = data_prev_dst; data_first_dst = ical_data; data_prev_dst = ical_data; rrule_day_cnt_dst_prev = rrule_day_cnt_dst; rrule_day_cnt_dst = wit_get_rrule(data_prev_dst, ical_data); } else { - data_old_std = data_prev_std; data_first_std = ical_data; data_prev_std = ical_data; rrule_day_cnt_std_prev = rrule_day_cnt_std; @@ -797,22 +781,19 @@ else { tmp_data2->next = tmp_data; } - data_old_dst = data_prev_dst; data_prev_dst = ical_data; } } else { /* not RRULE or we changed to/from RRULE from/to RDATE, * so write previous and init new round */ wit_write_data(rrule_day_cnt_dst_prev, prev_dst_data - , data_old_dst, data_first_dst, data_prev_dst); + , data_first_dst, data_prev_dst); if (rrule_day_cnt_dst_prev > 10 && rrule_day_cnt_dst < 10) { /* we had RDATE and now we found RRULE */ - /* data_old_dst stays to point the previous RDATE */ /* this was actually the first RRULE */ data_first_dst = data_prev_dst; } else { - data_old_dst = data_prev_dst; data_first_dst = ical_data; } data_prev_dst = ical_data; @@ -852,22 +833,19 @@ else { tmp_data2->next = tmp_data; } - data_old_std = data_prev_std; data_prev_std = ical_data; } } else { /* not RRULE or we changed to/from RRULE from/to RDATE, * so write previous and init new round */ wit_write_data(rrule_day_cnt_std_prev, prev_std_data - , data_old_std, data_first_std, data_prev_std); + , data_first_std, data_prev_std); if (rrule_day_cnt_std_prev > 10 && rrule_day_cnt_std < 10) { - /* we had RDATE and now we founf RRULE */ - /* data_old_std stays to point the previous RDATE */ + /* we had RDATE and now we found RRULE */ /* this was actually the first RRULE */ data_first_std = data_prev_std; } else { - data_old_std = data_prev_std; data_first_std = ical_data; } data_prev_std = ical_data; @@ -879,9 +857,9 @@ /* need to write the last one also */ printf("*****writing last entry*****\n"); wit_write_data(rrule_day_cnt_std_prev, prev_std_data - , data_old_std, data_first_std, data_prev_std); + , data_first_std, data_prev_std); wit_write_data(rrule_day_cnt_dst_prev, prev_dst_data - , data_old_dst, data_first_dst, data_prev_dst); + , data_first_dst, data_prev_dst); printf("write_ical_timezones: end\n"); } _______________________________________________ Xfce4-commits mailing list Xfce4-commits@xfce.org http://foo-projects.org/mailman/listinfo/xfce4-commits