Index: php_date.c =================================================================== RCS file: /repository/php-src/ext/date/php_date.c,v retrieving revision 1.43.2.45.2.51.2.54 diff -u -r1.43.2.45.2.51.2.54 php_date.c --- php_date.c 8 Aug 2008 22:07:07 -0000 1.43.2.45.2.51.2.54 +++ php_date.c 3 Sep 2008 12:19:55 -0000 @@ -3809,10 +3809,10 @@ for (i = 0; i < item_count; ++i) { if (what == PHP_DATE_TIMEZONE_PER_COUNTRY) { - if (tzdb->data[table[i].pos + 5] == option[0] && tzdb->data[table[i].pos + 6] == option[1]) { + if (tzdb->data[table[i].pos + 1] == option[0] && tzdb->data[table[i].pos + 2] == option[1]) { add_next_index_string(return_value, table[i].id, 1); } - } else if (what == PHP_DATE_TIMEZONE_GROUP_ALL_W_BC || (check_id_allowed(table[i].id, what) && (tzdb->data[table[i].pos + 4] == '\1'))) { + } else if (what == PHP_DATE_TIMEZONE_GROUP_ALL_W_BC || (check_id_allowed(table[i].id, what) && (tzdb->data[table[i].pos] == '\1'))) { add_next_index_string(return_value, table[i].id, 1); } }; Index: lib/parse_tz.c =================================================================== RCS file: /repository/php-src/ext/date/lib/parse_tz.c,v retrieving revision 1.20.2.6.2.13.2.4 diff -u -r1.20.2.6.2.13.2.4 parse_tz.c --- lib/parse_tz.c 9 Aug 2008 22:01:08 -0000 1.20.2.6.2.13.2.4 +++ lib/parse_tz.c 3 Sep 2008 12:19:55 -0000 @@ -51,9 +51,6 @@ static void read_preamble(char **tzf, timelib_tzinfo *tz) { - /* skip ID */ - *tzf += 4; - /* read BC flag */ tz->bc = (**tzf == '\1'); *tzf += 1; @@ -62,9 +59,6 @@ memcpy(tz->location.country_code, *tzf, 2); tz->location.country_code[2] = '\0'; *tzf += 2; - - /* skip read of preamble */ - *tzf += 13; } static void read_header(char **tzf, timelib_tzinfo *tz)