- MFH: Fixed bug #44260 (African timezones missing).

This commit is contained in:
Derick Rethans 2008-02-27 09:47:35 +00:00
parent 6f95e17a19
commit 825c3f5ac2

View File

@ -1500,18 +1500,19 @@ PHP_FUNCTION(getdate)
}
/* }}} */
#define PHP_DATE_TIMEZONE_GROUP_AMERICA 0x0001
#define PHP_DATE_TIMEZONE_GROUP_ANTARCTICA 0x0002
#define PHP_DATE_TIMEZONE_GROUP_ARCTIC 0x0004
#define PHP_DATE_TIMEZONE_GROUP_ASIA 0x0008
#define PHP_DATE_TIMEZONE_GROUP_ATLANTIC 0x0010
#define PHP_DATE_TIMEZONE_GROUP_AUSTRALIA 0x0020
#define PHP_DATE_TIMEZONE_GROUP_EUROPE 0x0040
#define PHP_DATE_TIMEZONE_GROUP_INDIAN 0x0080
#define PHP_DATE_TIMEZONE_GROUP_PACIFIC 0x0100
#define PHP_DATE_TIMEZONE_GROUP_UTC 0x0200
#define PHP_DATE_TIMEZONE_GROUP_ALL 0x03FF
#define PHP_DATE_TIMEZONE_GROUP_ALL_W_BC 0x07FF
#define PHP_DATE_TIMEZONE_GROUP_AFRICA 0x0001
#define PHP_DATE_TIMEZONE_GROUP_AMERICA 0x0002
#define PHP_DATE_TIMEZONE_GROUP_ANTARCTICA 0x0004
#define PHP_DATE_TIMEZONE_GROUP_ARCTIC 0x0008
#define PHP_DATE_TIMEZONE_GROUP_ASIA 0x0010
#define PHP_DATE_TIMEZONE_GROUP_ATLANTIC 0x0020
#define PHP_DATE_TIMEZONE_GROUP_AUSTRALIA 0x0040
#define PHP_DATE_TIMEZONE_GROUP_EUROPE 0x0080
#define PHP_DATE_TIMEZONE_GROUP_INDIAN 0x0100
#define PHP_DATE_TIMEZONE_GROUP_PACIFIC 0x0200
#define PHP_DATE_TIMEZONE_GROUP_UTC 0x0400
#define PHP_DATE_TIMEZONE_GROUP_ALL 0x07FF
#define PHP_DATE_TIMEZONE_GROUP_ALL_W_BC 0x0FFF
static void date_register_classes(TSRMLS_D)
{
@ -1549,6 +1550,7 @@ static void date_register_classes(TSRMLS_D)
#define REGISTER_TIMEZONE_CLASS_CONST_STRING(const_name, value) \
zend_declare_class_constant_long(date_ce_timezone, const_name, sizeof(const_name)-1, value TSRMLS_CC);
REGISTER_TIMEZONE_CLASS_CONST_STRING("AFRICA", PHP_DATE_TIMEZONE_GROUP_AFRICA);
REGISTER_TIMEZONE_CLASS_CONST_STRING("AMERICA", PHP_DATE_TIMEZONE_GROUP_AMERICA);
REGISTER_TIMEZONE_CLASS_CONST_STRING("ANTARCTICA", PHP_DATE_TIMEZONE_GROUP_ANTARCTICA);
REGISTER_TIMEZONE_CLASS_CONST_STRING("ARCTIC", PHP_DATE_TIMEZONE_GROUP_ARCTIC);
@ -2507,6 +2509,7 @@ PHP_FUNCTION(timezone_transitions_get)
static int check_id_allowed(char *id, long what)
{
if (what & PHP_DATE_TIMEZONE_GROUP_AFRICA && strncasecmp(id, "Africa/", 7) == 0) return 1;
if (what & PHP_DATE_TIMEZONE_GROUP_AMERICA && strncasecmp(id, "America/", 8) == 0) return 1;
if (what & PHP_DATE_TIMEZONE_GROUP_ANTARCTICA && strncasecmp(id, "Antarctica/", 11) == 0) return 1;
if (what & PHP_DATE_TIMEZONE_GROUP_ARCTIC && strncasecmp(id, "Arctic/", 7) == 0) return 1;