[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
scottmacSun Jun 21 22:19:19 2009 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFH Fix bug #48276 - year is a long long so we need %lld so big endian systems print the correct value. http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.71&r2=1.43.2.45.2.72&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.71 php-src/ext/date/php_date.c:1.43.2.45.2.72 --- php-src/ext/date/php_date.c:1.43.2.45.2.71 Fri Jun 5 22:34:30 2009 +++ php-src/ext/date/php_date.c Sun Jun 21 22:19:19 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.71 2009/06/05 22:34:30 rasmus Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.72 2009/06/21 22:19:19 scottmac Exp $ */ #include "php.h" #include "php_streams.h" @@ -798,7 +798,7 @@ /* year */ case 'L': length = slprintf(buffer, 32, "%d", timelib_is_leap((int) t->y)); break; case 'y': length = slprintf(buffer, 32, "%02d", (int) t->y % 100); break; - case 'Y': length = slprintf(buffer, 32, "%s%04ld", t->y < 0 ? "-" : "", llabs(t->y)); break; + case 'Y': length = slprintf(buffer, 32, "%s%04lld", t->y < 0 ? "-" : "", llabs(t->y)); break; /* time */ case 'a': length = slprintf(buffer, 32, "%s", t->h >= 12 ? "pm" : "am"); break; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
rasmus Fri Jun 5 22:34:30 2009 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: Make this happy on gcc2 http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.70&r2=1.43.2.45.2.71&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.70 php-src/ext/date/php_date.c:1.43.2.45.2.71 --- php-src/ext/date/php_date.c:1.43.2.45.2.70 Sun May 31 20:43:57 2009 +++ php-src/ext/date/php_date.c Fri Jun 5 22:34:30 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.70 2009/05/31 20:43:57 stas Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.71 2009/06/05 22:34:30 rasmus Exp $ */ #include "php.h" #include "php_streams.h" @@ -34,6 +34,10 @@ static __inline __int64 llabs( __int64 i ) { return i >= 0? i: -i; } #endif +#if defined(__GNUC__) && __GNUC__ < 3 +static __inline __int64_t llabs( __int64_t i ) { return i >= 0 ? i : -i; } +#endif + /* {{{ arginfo */ static ZEND_BEGIN_ARG_INFO_EX(arginfo_date, 0, 0, 1) -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c php_date.h
stasSun May 31 20:43:57 2009 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c php_date.h Log: fix for #48247 http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.69&r2=1.43.2.45.2.70&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.69 php-src/ext/date/php_date.c:1.43.2.45.2.70 --- php-src/ext/date/php_date.c:1.43.2.45.2.69 Tue May 19 15:37:38 2009 +++ php-src/ext/date/php_date.c Sun May 31 20:43:57 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.69 2009/05/19 15:37:38 jani Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.70 2009/05/31 20:43:57 stas Exp $ */ #include "php.h" #include "php_streams.h" @@ -343,6 +343,7 @@ { date_globals->default_timezone = NULL; date_globals->timezone = NULL; + date_globals->tzcache = NULL; } /* }}} */ @@ -361,7 +362,7 @@ efree(DATEG(timezone)); } DATEG(timezone) = NULL; - zend_hash_init(&DATEG(tzcache), 4, NULL, _php_date_tzinfo_dtor, 0); + DATEG(tzcache) = NULL; return SUCCESS; } @@ -374,8 +375,11 @@ efree(DATEG(timezone)); } DATEG(timezone) = NULL; - zend_hash_destroy(&DATEG(tzcache)); - + if(DATEG(tzcache)) { + zend_hash_destroy(DATEG(tzcache)); + FREE_HASHTABLE(DATEG(tzcache)); + DATEG(tzcache) = NULL; + } return SUCCESS; } /* }}} */ @@ -552,13 +556,18 @@ { timelib_tzinfo *tzi, **ptzi; - if (zend_hash_find(&DATEG(tzcache), formal_tzname, strlen(formal_tzname) + 1, (void **) &ptzi) == SUCCESS) { + if(!DATEG(tzcache)) { + ALLOC_HASHTABLE(DATEG(tzcache)); + zend_hash_init(DATEG(tzcache), 4, NULL, _php_date_tzinfo_dtor, 0); + } + + if (zend_hash_find(DATEG(tzcache), formal_tzname, strlen(formal_tzname) + 1, (void **) &ptzi) == SUCCESS) { return *ptzi; } tzi = timelib_parse_tzfile(formal_tzname, tzdb); if (tzi) { - zend_hash_add(&DATEG(tzcache), formal_tzname, strlen(formal_tzname) + 1, (void *) &tzi, sizeof(timelib_tzinfo*), NULL); + zend_hash_add(DATEG(tzcache), formal_tzname, strlen(formal_tzname) + 1, (void *) &tzi, sizeof(timelib_tzinfo*), NULL); } return tzi; } @@ -654,7 +663,7 @@ { char *tz; timelib_tzinfo *tzi; - + tz = guess_timezone(DATE_TIMEZONEDB TSRMLS_CC); tzi = php_date_parse_tzfile(tz, DATE_TIMEZONEDB TSRMLS_CC); if (! tzi) { http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.h?r1=1.17.2.11.2.5&r2=1.17.2.11.2.6&diff_format=u Index: php-src/ext/date/php_date.h diff -u php-src/ext/date/php_date.h:1.17.2.11.2.5 php-src/ext/date/php_date.h:1.17.2.11.2.6 --- php-src/ext/date/php_date.h:1.17.2.11.2.5 Wed Dec 31 11:17:36 2008 +++ php-src/ext/date/php_date.h Sun May 31 20:43:57 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.h,v 1.17.2.11.2.5 2008/12/31 11:17:36 sebastian Exp $ */ +/* $Id: php_date.h,v 1.17.2.11.2.6 2009/05/31 20:43:57 stas Exp $ */ #ifndef PHP_DATE_H #define PHP_DATE_H @@ -87,7 +87,7 @@ ZEND_BEGIN_MODULE_GLOBALS(date) char *default_timezone; char *timezone; - HashTable tzcache; + HashTable *tzcache; ZEND_END_MODULE_GLOBALS(date) #ifdef ZTS -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
janiTue May 19 15:37:38 2009 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: - Revert bad compile warning fix which causes compile failures with older glibc http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.68&r2=1.43.2.45.2.69&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.68 php-src/ext/date/php_date.c:1.43.2.45.2.69 --- php-src/ext/date/php_date.c:1.43.2.45.2.68 Thu May 14 18:34:27 2009 +++ php-src/ext/date/php_date.c Tue May 19 15:37:38 2009 @@ -16,9 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.68 2009/05/14 18:34:27 jani Exp $ */ - -#define _ISOC9X_SOURCE +/* $Id: php_date.c,v 1.43.2.45.2.69 2009/05/19 15:37:38 jani Exp $ */ #include "php.h" #include "php_streams.h" -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
pajoye Tue May 5 10:58:24 2009 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: - MFH: fix build http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.66&r2=1.43.2.45.2.67&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.66 php-src/ext/date/php_date.c:1.43.2.45.2.67 --- php-src/ext/date/php_date.c:1.43.2.45.2.66 Mon May 4 17:08:43 2009 +++ php-src/ext/date/php_date.c Tue May 5 10:58:24 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.66 2009/05/04 17:08:43 pajoye Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.67 2009/05/05 10:58:24 pajoye Exp $ */ #include "php.h" #include "php_streams.h" @@ -31,7 +31,7 @@ #include #ifdef PHP_WIN32 -static inline __int64 llabs( __int64 i ) { return i >= 0? i: -i; } +static __inline __int64 llabs( __int64 i ) { return i >= 0? i: -i; } #endif /* {{{ arginfo */ -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
pajoye Mon May 4 17:08:44 2009 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: - fix build http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.65&r2=1.43.2.45.2.66&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.65 php-src/ext/date/php_date.c:1.43.2.45.2.66 --- php-src/ext/date/php_date.c:1.43.2.45.2.65 Sun May 3 18:22:59 2009 +++ php-src/ext/date/php_date.c Mon May 4 17:08:43 2009 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.65 2009/05/03 18:22:59 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.66 2009/05/04 17:08:43 pajoye Exp $ */ #include "php.h" #include "php_streams.h" @@ -30,6 +30,10 @@ #include "lib/timelib.h" #include +#ifdef PHP_WIN32 +static inline __int64 llabs( __int64 i ) { return i >= 0? i: -i; } +#endif + /* {{{ arginfo */ static ZEND_BEGIN_ARG_INFO_EX(arginfo_date, 0, 0, 1) -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/date/lib parse_tz.c tm2unixtime.c
derick Tue Jul 8 18:02:32 2008 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c /php-src/ext/date/lib parse_tz.c tm2unixtime.c Log: - MFH: Memory issues - MFH: // style comments http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.59&r2=1.43.2.45.2.60&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.59 php-src/ext/date/php_date.c:1.43.2.45.2.60 --- php-src/ext/date/php_date.c:1.43.2.45.2.59 Fri May 2 21:36:00 2008 +++ php-src/ext/date/php_date.c Tue Jul 8 18:02:31 2008 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.59 2008/05/02 21:36:00 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.60 2008/07/08 18:02:31 derick Exp $ */ #include "php.h" #include "php_streams.h" @@ -269,9 +269,9 @@ int initialized; int type; union { - timelib_tzinfo *tz; // TIMELIB_ZONETYPE_ID; - timelib_sll utc_offset; // TIMELIB_ZONETYPE_OFFSET - struct // TIMELIB_ZONETYPE_ABBR + timelib_tzinfo *tz; /* TIMELIB_ZONETYPE_ID; */ + timelib_sll utc_offset; /* TIMELIB_ZONETYPE_OFFSET */ + struct /* TIMELIB_ZONETYPE_ABBR */ { timelib_sll utc_offset; char*abbr; @@ -1147,14 +1147,6 @@ timelib_update_ts(t, tzi); ts = timelib_date_to_int(t, &error2); - /* if tz_info is not a copy, avoid double free */ - if (now->tz_info != tzi && now->tz_info) { - timelib_tzinfo_dtor(now->tz_info); - } - if (t->tz_info != tzi) { - timelib_tzinfo_dtor(t->tz_info); - } - timelib_time_dtor(now); timelib_time_dtor(t); @@ -1561,7 +1553,7 @@ new_obj->time->tz_abbr = strdup(old_obj->time->tz_abbr); } if (old_obj->time->tz_info) { - new_obj->time->tz_info = timelib_tzinfo_clone(old_obj->time->tz_info); + new_obj->time->tz_info = old_obj->time->tz_info; } return new_ov; @@ -1645,9 +1637,6 @@ php_date_obj *intern = (php_date_obj *)object; if (intern->time) { - if (intern->time->tz_info) { - timelib_tzinfo_dtor(intern->time->tz_info); - } timelib_time_dtor(intern->time); } @@ -1685,14 +1674,11 @@ timelib_time *now; timelib_tzinfo *tzi; timelib_error_container *err = NULL; - int free_tzi = 0, type = TIMELIB_ZONETYPE_ID, new_dst, errors_found = 0; + int type = TIMELIB_ZONETYPE_ID, new_dst, errors_found = 0; char *new_abbr; timelib_sll new_offset; if (dateobj->time) { - if (dateobj->time->tz_info) { - timelib_tzinfo_dtor(dateobj->time->tz_info); - } timelib_time_dtor(dateobj->time); } dateobj->time = timelib_strtotime(time_str_len ? time_str : "now", time_str_len ? time_str_len : sizeof("now") -1, &err, DATE_TIMEZONEDB); @@ -1716,8 +1702,7 @@ tzobj = (php_timezone_obj *) zend_object_store_get_object(timezone_object TSRMLS_CC); switch (tzobj->type) { case TIMELIB_ZONETYPE_ID: - tzi = timelib_tzinfo_clone(tzobj->tzi.tz); - free_tzi = 1; + tzi = tzobj->tzi.tz; break; case TIMELIB_ZONETYPE_OFFSET: new_offset = tzobj->tzi.utc_offset; @@ -1730,8 +1715,7 @@ } type = tzobj->type; } else if (dateobj->time->tz_info) { - tzi = timelib_tzinfo_clone(dateobj->time->tz_info); - free_tzi = 1; + tzi = dateobj->time->tz_info; } else { tzi = get_timezone_info(TSRMLS_C); } @@ -1758,12 +1742,6 @@ dateobj->time->have_weekday_relative = dateobj->time->have_relative = 0; - if (type == TIMELIB_ZONETYPE_ID && now->tz_info != tzi) { - timelib_tzinfo_dtor(now->tz_info); - } - if (free_tzi) { - timelib_tzinfo_dtor(tzi); - } timelib_time_dtor(now); return 1; @@ -2016,10 +1994,7 @@ if (tzobj->type != TIMELIB_ZONETYPE_ID) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "Can only do this for zones with ID for now"); } - if (dateobj->time->tz_info) { - timelib_tzinfo_dtor(dateobj->time->tz_info); - } - timelib_set_timezone(dateobj->time, timelib_tzinfo_clone(tzobj->tzi.tz)); + timelib_set_timezone(dateobj->ti
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
derick Fri May 2 21:36:01 2008 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: - Fixed an issue in date() where a : was printed for the O modifier after a P modifier was used. http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.58&r2=1.43.2.45.2.59&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.58 php-src/ext/date/php_date.c:1.43.2.45.2.59 --- php-src/ext/date/php_date.c:1.43.2.45.2.58 Wed Apr 16 17:21:46 2008 +++ php-src/ext/date/php_date.c Fri May 2 21:36:00 2008 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.58 2008/04/16 17:21:46 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.59 2008/05/02 21:36:00 derick Exp $ */ #include "php.h" #include "php_streams.h" @@ -731,7 +731,7 @@ char buffer[33]; timelib_time_offset *offset = NULL; timelib_sll isoweek, isoyear; - int rfc_colon = 0; + int rfc_colon; if (!format_len) { return estrdup(""); @@ -761,6 +761,7 @@ timelib_isoweek_from_date(t->y, t->m, t->d, &isoweek, &isoyear); for (i = 0; i < format_len; i++) { + rfc_colon = 0; switch (format[i]) { /* day */ case 'd': length = slprintf(buffer, 32, "%02d", (int) t->d); break; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/date/tests timestamp-in-dst.phpt
derick Mon Mar 31 09:12:15 2008 UTC Added files: (Branch: PHP_5_2) /php-src/ext/date/tests timestamp-in-dst.phpt Modified files: /php-src/ext/date php_date.c Log: - MFH: Fixed a bug in formatting timestamps when DST is active in the default timezone. http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.56&r2=1.43.2.45.2.57&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.56 php-src/ext/date/php_date.c:1.43.2.45.2.57 --- php-src/ext/date/php_date.c:1.43.2.45.2.56 Sun Feb 3 14:22:55 2008 +++ php-src/ext/date/php_date.c Mon Mar 31 09:12:15 2008 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.56 2008/02/03 14:22:55 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.57 2008/03/31 09:12:15 derick Exp $ */ #include "php.h" #include "php_streams.h" @@ -746,9 +746,9 @@ offset->abbr = strdup(t->tz_abbr); } else if (t->zone_type == TIMELIB_ZONETYPE_OFFSET) { offset = timelib_time_offset_ctor(); - offset->offset = (t->z - (t->dst * 60)) * -60; + offset->offset = (t->z) * -60; offset->leap_secs = 0; - offset->is_dst = t->dst; + offset->is_dst = 0; offset->abbr = malloc(9); /* GMT±\0 */ snprintf(offset->abbr, 9, "GMT%c%02d%02d", localtime ? ((offset->offset < 0) ? '-' : '+') : '+', http://cvs.php.net/viewvc.cgi/php-src/ext/date/tests/timestamp-in-dst.phpt?view=markup&rev=1.1 Index: php-src/ext/date/tests/timestamp-in-dst.phpt +++ php-src/ext/date/tests/timestamp-in-dst.phpt --TEST-- Format timestamp in DST test --INI-- date.timezone=CEST --FILE-- format( 'c' ) ); ?> --EXPECT-- string(25) "2008-02-14T13:34:51+00:00" --UEXPECT-- unicode(25) "2008-02-14T13:34:51+00:00" -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
derick Sun Feb 3 14:22:56 2008 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: - Fixed invalid read errors as found by GCOV. http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.55&r2=1.43.2.45.2.56&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.55 php-src/ext/date/php_date.c:1.43.2.45.2.56 --- php-src/ext/date/php_date.c:1.43.2.45.2.55 Sat Feb 2 17:26:23 2008 +++ php-src/ext/date/php_date.c Sun Feb 3 14:22:55 2008 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.55 2008/02/02 17:26:23 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.56 2008/02/03 14:22:55 derick Exp $ */ #include "php.h" #include "php_streams.h" @@ -1684,7 +1684,7 @@ timelib_time *now; timelib_tzinfo *tzi; timelib_error_container *err = NULL; - int free_tzi = 0, type = TIMELIB_ZONETYPE_ID, new_dst; + int free_tzi = 0, type = TIMELIB_ZONETYPE_ID, new_dst, errors_found = 0; char *new_abbr; timelib_sll new_offset; @@ -1695,22 +1695,17 @@ timelib_time_dtor(dateobj->time); } dateobj->time = timelib_strtotime(time_str_len ? time_str : "now", time_str_len ? time_str_len : sizeof("now") -1, &err, DATE_TIMEZONEDB); - if (err) { - if (ctor && err && err->error_count) { + + if (err && err->error_count) { + if (ctor) { /* spit out the first library error message, at least */ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Failed to parse time string (%s) at position %d (%c): %s", time_str, - err->error_messages[0].position, err->error_messages[0].character, err->error_messages[0].message); + err->error_messages[0].position, err->error_messages[0].character, err->error_messages[0].message); } - timelib_error_container_dtor(err); - } - - - if (ctor && err && err->error_count) { - /* spit out the first library error message, at least */ - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Failed to parse time string (%s) at position %d (%c): %s", time_str, - err->error_messages[0].position, err->error_messages[0].character, err->error_messages[0].message); + errors_found = 1; } - if (err && err->error_count) { + timelib_error_container_dtor(err); + if (errors_found) { return 0; } -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
derick Sat Feb 2 17:26:23 2008 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: - MFH: Make timezone_open() work again. http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.54&r2=1.43.2.45.2.55&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.54 php-src/ext/date/php_date.c:1.43.2.45.2.55 --- php-src/ext/date/php_date.c:1.43.2.45.2.54 Sat Jan 26 16:26:33 2008 +++ php-src/ext/date/php_date.c Sat Feb 2 17:26:23 2008 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.54 2008/01/26 16:26:33 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.55 2008/02/02 17:26:23 derick Exp $ */ #include "php.h" #include "php_streams.h" @@ -2168,6 +2168,7 @@ tzobj = zend_object_store_get_object(date_instantiate(date_ce_timezone, return_value TSRMLS_CC) TSRMLS_CC); tzobj->type = TIMELIB_ZONETYPE_ID; tzobj->tzi.tz = tzi; + tzobj->initialized = 1; } /* }}} */ -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
iliaa Fri Nov 23 00:16:49 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFB: Fixed bug #43377 (PHP crashes with invalid argument for DateTimeZone) http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.51&r2=1.43.2.45.2.52&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.51 php-src/ext/date/php_date.c:1.43.2.45.2.52 --- php-src/ext/date/php_date.c:1.43.2.45.2.51 Thu Jul 12 18:59:05 2007 +++ php-src/ext/date/php_date.c Fri Nov 23 00:16:48 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.51 2007/07/12 18:59:05 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.52 2007/11/23 00:16:48 iliaa Exp $ */ #include "php.h" #include "php_streams.h" @@ -2066,6 +2066,8 @@ if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &tz, &tz_len)) { if (SUCCESS == timezone_initialize(&tzi, tz TSRMLS_CC)) { ((php_timezone_obj *) zend_object_store_get_object(getThis() TSRMLS_CC))->tz = tzi; + } else { + ZVAL_NULL(getThis()); } } php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
derick Thu Jul 12 18:59:05 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: - MFH: Missing file in previous commit. http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.50&r2=1.43.2.45.2.51&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.50 php-src/ext/date/php_date.c:1.43.2.45.2.51 --- php-src/ext/date/php_date.c:1.43.2.45.2.50 Thu Jun 7 23:16:04 2007 +++ php-src/ext/date/php_date.c Thu Jul 12 18:59:05 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.50 2007/06/07 23:16:04 iliaa Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.51 2007/07/12 18:59:05 derick Exp $ */ #include "php.h" #include "php_streams.h" @@ -775,7 +775,7 @@ /* year */ case 'L': length = slprintf(buffer, 32, "%d", timelib_is_leap((int) t->y)); break; case 'y': length = slprintf(buffer, 32, "%02d", (int) t->y % 100); break; - case 'Y': length = slprintf(buffer, 32, "%04d", (int) t->y); break; + case 'Y': length = slprintf(buffer, 32, "%s%04d", t->y < 0 ? "-" : "", abs((int) t->y)); break; /* time */ case 'a': length = slprintf(buffer, 32, "%s", t->h >= 12 ? "pm" : "am"); break; @@ -1740,7 +1740,7 @@ parsed_time = timelib_strtotime(date, date_len, &error, DATE_TIMEZONEDB); array_init(return_value); #define PHP_DATE_PARSE_DATE_SET_TIME_ELEMENT(name, elem) \ - if (parsed_time->elem == -1) { \ + if (parsed_time->elem == -9) { \ add_assoc_bool(return_value, #name, 0); \ } else { \ add_assoc_long(return_value, #name, parsed_time->elem); \ @@ -1752,7 +1752,7 @@ PHP_DATE_PARSE_DATE_SET_TIME_ELEMENT(minute,i); PHP_DATE_PARSE_DATE_SET_TIME_ELEMENT(second,s); - if (parsed_time->f == -1) { + if (parsed_time->f == -9) { add_assoc_bool(return_value, "fraction", 0); } else { add_assoc_double(return_value, "fraction", parsed_time->f); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
iliaa Thu Jun 7 23:16:04 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: Final shot at the date issue http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.49&r2=1.43.2.45.2.50&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.49 php-src/ext/date/php_date.c:1.43.2.45.2.50 --- php-src/ext/date/php_date.c:1.43.2.45.2.49 Thu Jun 7 08:44:40 2007 +++ php-src/ext/date/php_date.c Thu Jun 7 23:16:04 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.49 2007/06/07 08:44:40 tony2001 Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.50 2007/06/07 23:16:04 iliaa Exp $ */ #include "php.h" #include "php_streams.h" @@ -2330,10 +2330,8 @@ } N = (calc_sunset ? h_set : h_rise) + gmt_offset; - if (N > 24) { + if (N > 24 || N < 0) { N -= floor(N / 24) * 24; - } else if (N < 0) { - N = floor(N / 24) * 24 + 24; } switch (retformat) { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
I think this one is still not right. Try N = -1, you should be getting 23, but you'd get 0. + N = floor(N / 24) * 24 + 24; } switch (retformat) { -- Stanislav Malyshev, Zend Products Engineer [EMAIL PROTECTED] http://www.zend.com/ -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
iliaa Thu Jun 7 02:21:26 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: Fixed typo http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.47&r2=1.43.2.45.2.48&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.47 php-src/ext/date/php_date.c:1.43.2.45.2.48 --- php-src/ext/date/php_date.c:1.43.2.45.2.47 Wed Jun 6 23:16:34 2007 +++ php-src/ext/date/php_date.c Thu Jun 7 02:21:26 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.47 2007/06/06 23:16:34 iliaa Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.48 2007/06/07 02:21:26 iliaa Exp $ */ #include "php.h" #include "php_streams.h" @@ -2329,9 +2329,9 @@ N = (calc_sunset ? h_set : h_rise) + gmt_offset; if (N > 24) { - N -= floor(N / 24) * N; + N -= floor(N / 24) * 24; } else if (N < 0) { - N = floor(N / 24) * -N + 24; + N = floor(N / 24) * 24 + 24; } switch (retformat) { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
The problem is that N is a double and gcc does not like doing % on doubles, at least if the compiler error is to be believed. On 6-Jun-07, at 9:12 PM, Stanislav Malyshev wrote: I suspect you meant something different here. shouldn't it be: N -= floor(N/24)*24 in both cases? BTW, just out of curiosity - which compilers can't do % and need floor? -- Stanislav Malyshev, Zend Products Engineer [EMAIL PROTECTED] http://www.zend.com/ Ilia Alshanetsky -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
I suspect you meant something different here. shouldn't it be: N -= floor(N/24)*24 in both cases? BTW, just out of curiosity - which compilers can't do % and need floor? -- Stanislav Malyshev, Zend Products Engineer [EMAIL PROTECTED] http://www.zend.com/ -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
I suspect you meant something different here. shouldn't it be: N -= floor(N/24)*24 in both cases? #include "php.h" #include "php_streams.h" @@ -2329,9 +2329,9 @@ N = (calc_sunset ? h_set : h_rise) + gmt_offset; if (N > 24) { - N %= 24; + N -= floor(N / 24) * N; } else if (N < 0) { - N = N % 24 + 24; + N = floor(N / 24) * -N + 24; } switch (retformat) { -- Stanislav Malyshev, Zend Products Engineer [EMAIL PROTECTED] http://www.zend.com/ -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
iliaa Wed Jun 6 23:16:34 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: Adjust previous patch to work on all compilers http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.46&r2=1.43.2.45.2.47&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.46 php-src/ext/date/php_date.c:1.43.2.45.2.47 --- php-src/ext/date/php_date.c:1.43.2.45.2.46 Wed Jun 6 22:58:42 2007 +++ php-src/ext/date/php_date.c Wed Jun 6 23:16:34 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.46 2007/06/06 22:58:42 iliaa Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.47 2007/06/06 23:16:34 iliaa Exp $ */ #include "php.h" #include "php_streams.h" @@ -2329,9 +2329,9 @@ N = (calc_sunset ? h_set : h_rise) + gmt_offset; if (N > 24) { - N %= 24; + N -= floor(N / 24) * N; } else if (N < 0) { - N = N % 24 + 24; + N = floor(N / 24) * -N + 24; } switch (retformat) { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
iliaa Wed Jun 6 22:58:42 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: Optimize out a loop http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.45&r2=1.43.2.45.2.46&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.45 php-src/ext/date/php_date.c:1.43.2.45.2.46 --- php-src/ext/date/php_date.c:1.43.2.45.2.45 Fri Apr 13 14:09:20 2007 +++ php-src/ext/date/php_date.c Wed Jun 6 22:58:42 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.45 2007/04/13 14:09:20 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.46 2007/06/06 22:58:42 iliaa Exp $ */ #include "php.h" #include "php_streams.h" @@ -2327,12 +2327,13 @@ RETURN_LONG(calc_sunset ? set : rise); } N = (calc_sunset ? h_set : h_rise) + gmt_offset; - while (N > 24) { - N -= 24; - } - while (N < 0) { - N += 24; + + if (N > 24) { + N %= 24; + } else if (N < 0) { + N = N % 24 + 24; } + switch (retformat) { case SUNFUNCS_RET_STRING: spprintf(&retstr, 0, "%02d:%02d", (int) N, (int) (60 * (N - (int) N))); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
mikeMon Mar 5 14:10:18 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: - fix ws as requested by derick http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.42&r2=1.43.2.45.2.43&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.42 php-src/ext/date/php_date.c:1.43.2.45.2.43 --- php-src/ext/date/php_date.c:1.43.2.45.2.42 Mon Mar 5 14:05:55 2007 +++ php-src/ext/date/php_date.c Mon Mar 5 14:10:18 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.42 2007/03/05 14:05:55 mike Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.43 2007/03/05 14:10:18 mike Exp $ */ #include "php.h" #include "php_streams.h" @@ -1534,9 +1534,9 @@ static int date_object_compare_date(zval *d1, zval *d2 TSRMLS_DC) { - if (Z_TYPE_P(d1) == IS_OBJECT && Z_TYPE_P(d2) == IS_OBJECT && - instanceof_function(Z_OBJCE_P(d1), date_ce_date TSRMLS_CC) && - instanceof_function(Z_OBJCE_P(d2), date_ce_date TSRMLS_CC)) { + if (Z_TYPE_P(d1) == IS_OBJECT && Z_TYPE_P(d2) == IS_OBJECT && + instanceof_function(Z_OBJCE_P(d1), date_ce_date TSRMLS_CC) && + instanceof_function(Z_OBJCE_P(d2), date_ce_date TSRMLS_CC)) { php_date_obj *o1 = zend_object_store_get_object(d1 TSRMLS_CC); php_date_obj *o2 = zend_object_store_get_object(d2 TSRMLS_CC); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
mikeMon Mar 5 14:05:55 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: - fix bug #40691: add comparison object handler http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.41&r2=1.43.2.45.2.42&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.41 php-src/ext/date/php_date.c:1.43.2.45.2.42 --- php-src/ext/date/php_date.c:1.43.2.45.2.41 Tue Feb 27 03:04:39 2007 +++ php-src/ext/date/php_date.c Mon Mar 5 14:05:55 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.41 2007/02/27 03:04:39 iliaa Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.42 2007/03/05 14:05:55 mike Exp $ */ #include "php.h" #include "php_streams.h" @@ -297,6 +297,7 @@ static zend_object_value date_object_new_date(zend_class_entry *class_type TSRMLS_DC); static zend_object_value date_object_new_timezone(zend_class_entry *class_type TSRMLS_DC); static zend_object_value date_object_clone_date(zval *this_ptr TSRMLS_DC); +static int date_object_compare_date(zval *d1, zval *d2 TSRMLS_DC); static zend_object_value date_object_clone_timezone(zval *this_ptr TSRMLS_DC); /* This is need to ensure that session extension request shutdown occurs 1st, because it uses the date extension */ @@ -1459,6 +1460,7 @@ date_ce_date = zend_register_internal_class_ex(&ce_date, NULL, NULL TSRMLS_CC); memcpy(&date_object_handlers_date, zend_get_std_object_handlers(), sizeof(zend_object_handlers)); date_object_handlers_date.clone_obj = date_object_clone_date; + date_object_handlers_date.compare_objects = date_object_compare_date; #define REGISTER_DATE_CLASS_CONST_STRING(const_name, value) \ zend_declare_class_constant_stringl(date_ce_date, const_name, sizeof(const_name)-1, value, sizeof(value)-1 TSRMLS_CC); @@ -1530,6 +1532,27 @@ return new_ov; } +static int date_object_compare_date(zval *d1, zval *d2 TSRMLS_DC) +{ + if (Z_TYPE_P(d1) == IS_OBJECT && Z_TYPE_P(d2) == IS_OBJECT && + instanceof_function(Z_OBJCE_P(d1), date_ce_date TSRMLS_CC) && + instanceof_function(Z_OBJCE_P(d2), date_ce_date TSRMLS_CC)) { + php_date_obj *o1 = zend_object_store_get_object(d1 TSRMLS_CC); + php_date_obj *o2 = zend_object_store_get_object(d2 TSRMLS_CC); + + if (!o1->time->sse_uptodate) { + timelib_update_ts(o1->time, o1->time->tz_info); + } + if (!o2->time->sse_uptodate) { + timelib_update_ts(o2->time, o2->time->tz_info); + } + + return (o1->time->sse == o2->time->sse) ? 0 : ((o1->time->sse < o2->time->sse) ? -1 : 1); + } + + return 1; +} + static inline zend_object_value date_object_new_timezone_ex(zend_class_entry *class_type, php_timezone_obj **ptr TSRMLS_DC) { php_timezone_obj *intern; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/exif exif.c /ext/imap php_imap.c /ext/interbase ibase_query.c ibase_service.c interbase.c /ext/pdo_firebird firebird_statement.c /ext
On Tue, 27 Feb 2007, Ilia Alshanetsky wrote: > iliaa Tue Feb 27 03:04:40 2007 UTC > > Modified files: (Branch: PHP_5_2) > /php-src/ext/date php_date.c Please revert that from PHP_5_2 unless you're merging it to HEAD as well. regards, Derick -- Derick Rethans http://derickrethans.nl | http://ez.no | http://xdebug.org -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/exif exif.c /ext/imap php_imap.c /ext/interbase ibase_query.c ibase_service.c interbase.c /ext/pdo_firebird firebird_statement.c /ext/soa
iliaa Tue Feb 27 03:04:40 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c /php-src/ext/exif exif.c /php-src/ext/imap php_imap.c /php-src/ext/interbase ibase_query.c ibase_service.c interbase.c /php-src/ext/pdo_firebird firebird_statement.c /php-src/ext/soap soap.c Log: snprintf() -> slprintf() # Part 1 http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.40&r2=1.43.2.45.2.41&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.40 php-src/ext/date/php_date.c:1.43.2.45.2.41 --- php-src/ext/date/php_date.c:1.43.2.45.2.40 Sat Feb 24 02:17:24 2007 +++ php-src/ext/date/php_date.c Tue Feb 27 03:04:39 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.40 2007/02/24 02:17:24 helly Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.41 2007/02/27 03:04:39 iliaa Exp $ */ #include "php.h" #include "php_streams.h" @@ -748,66 +748,66 @@ for (i = 0; i < format_len; i++) { switch (format[i]) { /* day */ - case 'd': length = snprintf(buffer, 32, "%02d", (int) t->d); break; - case 'D': length = snprintf(buffer, 32, "%s", php_date_short_day_name(t->y, t->m, t->d)); break; - case 'j': length = snprintf(buffer, 32, "%d", (int) t->d); break; - case 'l': length = snprintf(buffer, 32, "%s", php_date_full_day_name(t->y, t->m, t->d)); break; - case 'S': length = snprintf(buffer, 32, "%s", english_suffix(t->d)); break; - case 'w': length = snprintf(buffer, 32, "%d", (int) timelib_day_of_week(t->y, t->m, t->d)); break; - case 'N': length = snprintf(buffer, 32, "%d", (int) timelib_iso_day_of_week(t->y, t->m, t->d)); break; - case 'z': length = snprintf(buffer, 32, "%d", (int) timelib_day_of_year(t->y, t->m, t->d)); break; + case 'd': length = slprintf(buffer, 32, "%02d", (int) t->d); break; + case 'D': length = slprintf(buffer, 32, "%s", php_date_short_day_name(t->y, t->m, t->d)); break; + case 'j': length = slprintf(buffer, 32, "%d", (int) t->d); break; + case 'l': length = slprintf(buffer, 32, "%s", php_date_full_day_name(t->y, t->m, t->d)); break; + case 'S': length = slprintf(buffer, 32, "%s", english_suffix(t->d)); break; + case 'w': length = slprintf(buffer, 32, "%d", (int) timelib_day_of_week(t->y, t->m, t->d)); break; + case 'N': length = slprintf(buffer, 32, "%d", (int) timelib_iso_day_of_week(t->y, t->m, t->d)); break; + case 'z': length = slprintf(buffer, 32, "%d", (int) timelib_day_of_year(t->y, t->m, t->d)); break; /* week */ - case 'W': length = snprintf(buffer, 32, "%02d", (int) isoweek); break; /* iso weeknr */ - case 'o': length = snprintf(buffer, 32, "%d", (int) isoyear); break; /* iso year */ + case 'W': length = slprintf(buffer, 32, "%02d", (int) isoweek); break; /* iso weeknr */ + case 'o': length = slprintf(buffer, 32, "%d", (int) isoyear); break; /* iso year */ /* month */ - case 'F': length = snprintf(buffer, 32, "%s", mon_full_names[t->m - 1]); break; - case 'm': length = snprintf(buffer, 32, "%02d", (int) t->m); break; - case 'M': length = snprintf(buffer, 32, "%s", mon_short_names[t->m - 1]); break; - case 'n': length = snprintf(buffer, 32, "%d", (int) t->m); break; - case 't': length = snprintf(buffer, 32, "%d", (int) timelib_days_in_month(t->y, t->m)); break; + case 'F': length = slprintf(buffer, 32, "%s", mon_full_names[t->m - 1]); break; + case 'm': length = slprintf(buffer, 32, "%02d", (int) t->m); break; + case 'M': length = slprintf(buffer, 32, "%s", mon_short_names[t->m - 1]); break; + case 'n': length = slprintf(buffer, 32, "%d", (int) t->m); break; + case 't': length = slprintf(buffer, 32, "%d", (int) timelib_days_in_month(t->y, t->m)); break; /* year */ - case 'L': length = snprintf(buffer, 32, "%d", timelib_is_leap((int) t->y)); break; - case 'y': length = snprintf(buffer, 32, "%02d", (int) t->y % 100); break; - case 'Y': length = snprintf(buffer, 32, "%04d", (int) t->y); break; + case 'L': length = slprintf(buffer, 32, "%d", timelib_is_leap((int) t->
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
derick Wed Feb 14 19:35:10 2007 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: - MFH: Clarify the source of the timezone data. http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.38&r2=1.43.2.45.2.39&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.38 php-src/ext/date/php_date.c:1.43.2.45.2.39 --- php-src/ext/date/php_date.c:1.43.2.45.2.38 Wed Jan 3 14:46:23 2007 +++ php-src/ext/date/php_date.c Wed Feb 14 19:35:09 2007 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.38 2007/01/03 14:46:23 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.39 2007/02/14 19:35:09 derick Exp $ */ #include "php.h" #include "php_streams.h" @@ -527,7 +527,7 @@ php_info_print_table_start(); php_info_print_table_row(2, "date/time support", "enabled"); - php_info_print_table_row(2, "Timezone Database Version", tzdb->version); + php_info_print_table_row(2, "\"Olson\" Timezone Database Version", tzdb->version); php_info_print_table_row(2, "Timezone Database", php_date_global_timezone_db_enabled ? "external" : "internal"); php_info_print_table_row(2, "Default timezone", guess_timezone(tzdb TSRMLS_CC)); php_info_print_table_end(); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
bjori Mon Nov 6 16:11:26 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFH: throw exception on invalid parameters http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.33&r2=1.43.2.45.2.34&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.33 php-src/ext/date/php_date.c:1.43.2.45.2.34 --- php-src/ext/date/php_date.c:1.43.2.45.2.33 Fri Nov 3 15:06:51 2006 +++ php-src/ext/date/php_date.c Mon Nov 6 16:11:26 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.33 2006/11/03 15:06:51 bjori Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.34 2006/11/06 16:11:26 bjori Exp $ */ #include "php.h" #include "php_streams.h" @@ -1679,11 +1679,11 @@ char *time_str = NULL; int time_str_len = 0; + php_set_error_handling(EH_THROW, NULL TSRMLS_CC); if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|sO", &time_str, &time_str_len, &timezone_object, date_ce_timezone)) { - php_set_error_handling(EH_THROW, NULL TSRMLS_CC); date_initialize(zend_object_store_get_object(getThis() TSRMLS_CC), time_str, time_str_len, timezone_object TSRMLS_CC); - php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); } + php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); } /* }}} */ -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
bjori Fri Nov 3 14:38:45 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFH: oneliners.. http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.31&r2=1.43.2.45.2.32&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.31 php-src/ext/date/php_date.c:1.43.2.45.2.32 --- php-src/ext/date/php_date.c:1.43.2.45.2.31 Fri Nov 3 14:36:11 2006 +++ php-src/ext/date/php_date.c Fri Nov 3 14:38:45 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.31 2006/11/03 14:36:11 bjori Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.32 2006/11/03 14:38:45 bjori Exp $ */ #include "php.h" #include "php_streams.h" @@ -1653,6 +1653,7 @@ } /* {{{ proto DateTime date_create([string time[, DateTimeZone object]]) + Returns new DateTime object */ PHP_FUNCTION(date_create) { @@ -1670,6 +1671,7 @@ /* }}} */ /* {{{ proto DateTime::__construct([string time[, DateTimeZone object]]) + Creates new DateTime object */ PHP_METHOD(DateTime, __construct) { @@ -1686,6 +1688,7 @@ /* }}} */ /* {{{ proto array date_parse(string date) + Returns associative array with detailed info about given date */ PHP_FUNCTION(date_parse) { @@ -1784,6 +1787,7 @@ /* }}} */ /* {{{ proto string date_format(DateTime object, string format) + Returns date formatted according to given format */ PHP_FUNCTION(date_format) { @@ -1802,6 +1806,7 @@ /* }}} */ /* {{{ proto void date_modify(DateTime object, string modify) + Alters the timestamp. */ PHP_FUNCTION(date_modify) { @@ -1836,6 +1841,7 @@ /* }}} */ /* {{{ proto DateTimeZone date_timezone_get(DateTime object) + Return new DateTimeZone object relative to give DateTime */ PHP_FUNCTION(date_timezone_get) { @@ -1859,6 +1865,7 @@ /* }}} */ /* {{{ proto void date_timezone_set(DateTime object, DateTimeZone object) + Sets the timezone for the DateTime object. */ PHP_FUNCTION(date_timezone_set) { @@ -1882,6 +1889,7 @@ /* }}} */ /* {{{ proto long date_offset_get(DateTime object) + Returns the DST offset. */ PHP_FUNCTION(date_offset_get) { @@ -1906,6 +1914,7 @@ /* }}} */ /* {{{ proto void date_time_set(DateTime object, long hour, long minute[, long second]) + Sets the time. */ PHP_FUNCTION(date_time_set) { @@ -1926,6 +1935,7 @@ /* }}} */ /* {{{ proto void date_date_set(DateTime object, long year, long month, long day) + Sets the date. */ PHP_FUNCTION(date_date_set) { @@ -1946,6 +1956,7 @@ /* }}} */ /* {{{ proto void date_isodate_set(DateTime object, long year, long week[, long day]) + Sets the ISO date. */ PHP_FUNCTION(date_isodate_set) { @@ -1989,6 +2000,7 @@ } /* {{{ proto DateTimeZone timezone_open(string timezone) + Returns new DateTimeZone object */ PHP_FUNCTION(timezone_open) { @@ -2007,6 +2019,7 @@ /* }}} */ /* {{{ proto DateTimeZone::__construct(string timezone) + Creates new DateTimeZone object. */ PHP_METHOD(DateTimeZone, __construct) { @@ -2025,6 +2038,7 @@ /* }}} */ /* {{{ proto string timezone_name_get(DateTimeZone object) + Returns the name of the timezone. */ PHP_FUNCTION(timezone_name_get) { @@ -2042,6 +2056,7 @@ /* }}} */ /* {{{ proto string timezone_name_from_abbr(string abbr[, long gmtOffset[, long isdst]]) + Returns the timezone name from abbrevation */ PHP_FUNCTION(timezone_name_from_abbr) { @@ -2065,6 +2080,7 @@ /* }}} */ /* {{{ proto long timezone_offset_get(DateTimeZone object, DateTime object) + Returns the timezone offset. */ PHP_FUNCTION(timezone_offset_get) { @@ -2088,6 +2104,7 @@ /* }}} */ /* {{{ proto array timezone_transitions_get(DateTimeZone object) + Returns numeracilly indexed array containing associative array for all transitions for the timezone. */ PHP_FUNCTION(timezone_transitions_get) { @@ -2117,6 +2134,7 @@ /* }}} */ /* {{{ proto array timezone_identifiers_list() + Returns numerically index array with all timezone identifiers. */ PHP_FUNCTION(timezone_identifiers_list) { @@ -2136,7 +2154,8 @@ } /* }}} */ -/* proto {{{ array timezone_abbreviations_list() +/* {{{ proto array timezone_abbreviations_list() + Returns associative array containing dst, offset and the timezone name */ PHP_FUNCTION(timezone_abbreviations_list) { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
bjori Fri Nov 3 14:36:12 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFH: use PHP_ME_MAPPING rather than ZEND_NAMED_FE/ZEND_FN http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.30&r2=1.43.2.45.2.31&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.30 php-src/ext/date/php_date.c:1.43.2.45.2.31 --- php-src/ext/date/php_date.c:1.43.2.45.2.30 Sun Sep 10 17:01:51 2006 +++ php-src/ext/date/php_date.c Fri Nov 3 14:36:11 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.30 2006/09/10 17:01:51 bjori Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.31 2006/11/03 14:36:11 bjori Exp $ */ #include "php.h" #include "php_streams.h" @@ -198,25 +198,25 @@ }; zend_function_entry date_funcs_date[] = { - PHP_ME(DateTime, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) - ZEND_NAMED_FE(format, ZEND_FN(date_format), NULL) - ZEND_NAMED_FE(modify, ZEND_FN(date_modify), NULL) - ZEND_NAMED_FE(getTimezone, ZEND_FN(date_timezone_get), NULL) - ZEND_NAMED_FE(setTimezone, ZEND_FN(date_timezone_set), NULL) - ZEND_NAMED_FE(getOffset, ZEND_FN(date_offset_get), NULL) - ZEND_NAMED_FE(setTime, ZEND_FN(date_time_set), NULL) - ZEND_NAMED_FE(setDate, ZEND_FN(date_date_set), NULL) - ZEND_NAMED_FE(setISODate, ZEND_FN(date_isodate_set), NULL) + PHP_ME(DateTime,__construct,NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(format, date_format,NULL, 0) + PHP_ME_MAPPING(modify, date_modify,NULL, 0) + PHP_ME_MAPPING(getTimezone, date_timezone_get, NULL, 0) + PHP_ME_MAPPING(setTimezone, date_timezone_set, NULL, 0) + PHP_ME_MAPPING(getOffset, date_offset_get,NULL, 0) + PHP_ME_MAPPING(setTime, date_time_set, NULL, 0) + PHP_ME_MAPPING(setDate, date_date_set, NULL, 0) + PHP_ME_MAPPING(setISODate, date_isodate_set, NULL, 0) {NULL, NULL, NULL} }; zend_function_entry date_funcs_timezone[] = { - PHP_ME(DateTimeZone, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) - ZEND_NAMED_FE(getName, ZEND_FN(timezone_name_get), NULL) - ZEND_NAMED_FE(getOffset, ZEND_FN(timezone_offset_get), NULL) - ZEND_NAMED_FE(getTransitions, ZEND_FN(timezone_transitions_get), NULL) - ZEND_ME_MAPPING(listAbbreviations, timezone_abbreviations_list, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) - ZEND_ME_MAPPING(listIdentifiers, timezone_identifiers_list, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) + PHP_ME(DateTimeZone,__construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) + PHP_ME_MAPPING(getName, timezone_name_get, NULL, 0) + PHP_ME_MAPPING(getOffset, timezone_offset_get, NULL, 0) + PHP_ME_MAPPING(getTransitions, timezone_transitions_get, NULL, 0) + PHP_ME_MAPPING(listAbbreviations, timezone_abbreviations_list, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) + PHP_ME_MAPPING(listIdentifiers, timezone_identifiers_list, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) {NULL, NULL, NULL} }; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
bjori Sun Sep 10 17:01:51 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFH: proots http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.29&r2=1.43.2.45.2.30&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.29 php-src/ext/date/php_date.c:1.43.2.45.2.30 --- php-src/ext/date/php_date.c:1.43.2.45.2.29 Sun Sep 10 16:34:08 2006 +++ php-src/ext/date/php_date.c Sun Sep 10 17:01:51 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.29 2006/09/10 16:34:08 bjori Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.30 2006/09/10 17:01:51 bjori Exp $ */ #include "php.h" #include "php_streams.h" @@ -1652,6 +1652,8 @@ timelib_time_dtor(now); } +/* {{{ proto DateTime date_create([string time[, DateTimeZone object]]) +*/ PHP_FUNCTION(date_create) { zval *timezone_object = NULL; @@ -1665,7 +1667,10 @@ date_instantiate(date_ce_date, return_value TSRMLS_CC); date_initialize(zend_object_store_get_object(return_value TSRMLS_CC), time_str, time_str_len, timezone_object TSRMLS_CC); } +/* }}} */ +/* {{{ proto DateTime::__construct([string time[, DateTimeZone object]]) +*/ PHP_METHOD(DateTime, __construct) { zval *timezone_object = NULL; @@ -1678,7 +1683,10 @@ php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); } } +/* }}} */ +/* {{{ proto array date_parse(string date) +*/ PHP_FUNCTION(date_parse) { char *date; @@ -1775,6 +1783,8 @@ } /* }}} */ +/* {{{ proto string date_format(DateTime object, string format) +*/ PHP_FUNCTION(date_format) { zval *object; @@ -1789,7 +1799,10 @@ DATE_CHECK_INITIALIZED(dateobj->time, DateTime); RETURN_STRING(date_format(format, format_len, dateobj->time, dateobj->time->is_localtime), 0); } +/* }}} */ +/* {{{ proto void date_modify(DateTime object, string modify) +*/ PHP_FUNCTION(date_modify) { zval *object; @@ -1820,7 +1833,10 @@ timelib_update_ts(dateobj->time, NULL); timelib_update_from_sse(dateobj->time); } +/* }}} */ +/* {{{ proto DateTimeZone date_timezone_get(DateTime object) +*/ PHP_FUNCTION(date_timezone_get) { zval *object; @@ -1840,7 +1856,10 @@ RETURN_FALSE; } } +/* }}} */ +/* {{{ proto void date_timezone_set(DateTime object, DateTimeZone object) +*/ PHP_FUNCTION(date_timezone_set) { zval *object; @@ -1860,7 +1879,10 @@ timelib_set_timezone(dateobj->time, timelib_tzinfo_clone(tzobj->tz)); timelib_unixtime2local(dateobj->time, dateobj->time->sse); } +/* }}} */ +/* {{{ proto long date_offset_get(DateTime object) +*/ PHP_FUNCTION(date_offset_get) { zval*object; @@ -1881,7 +1903,10 @@ RETURN_LONG(0); } } +/* }}} */ +/* {{{ proto void date_time_set(DateTime object, long hour, long minute[, long second]) +*/ PHP_FUNCTION(date_time_set) { zval *object; @@ -1898,7 +1923,10 @@ dateobj->time->s = s; timelib_update_ts(dateobj->time, NULL); } +/* }}} */ +/* {{{ proto void date_date_set(DateTime object, long year, long month, long day) +*/ PHP_FUNCTION(date_date_set) { zval *object; @@ -1915,7 +1943,10 @@ dateobj->time->d = d; timelib_update_ts(dateobj->time, NULL); } +/* }}} */ +/* {{{ proto void date_isodate_set(DateTime object, long year, long week[, long day]) +*/ PHP_FUNCTION(date_isodate_set) { zval *object; @@ -1935,7 +1966,7 @@ timelib_update_ts(dateobj->time, NULL); } - +/* }}} */ static int timezone_initialize(timelib_tzinfo **tzi, /*const*/ char *tz TSRMLS_DC) { @@ -1957,6 +1988,8 @@ } } +/* {{{ proto DateTimeZone timezone_open(string timezone) +*/ PHP_FUNCTION(timezone_open) { char *tz; @@ -1971,7 +2004,10 @@ } ((php_timezone_obj *) zend_object_store_get_object(date_instantiate(date_ce_timezone, return_value TSRMLS_CC) TSRMLS_CC))->tz = tzi; } +/* }}} */ +/* {{{ proto DateTimeZone::__construct(string timezone) +*/ PHP_METHOD(DateTimeZone, __construct) { char *tz; @@ -1986,7 +2022,10 @@ } php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); } +/* }}} */ +/* {{{ proto string timezone_name_get(DateTimeZone object) +*/ PHP_FUNCTION(timezone_name_get) { zval *object; @@ -2000,7 +2039,10 @@ RETURN_STRING(tzobj->tz->name, 1); } +/* }}} */ +/* {{{ proto string timezone_name_from_abbr(string abbr[, long gmtOffset[, long isdst]]) +*/ PHP_FUNCTION(timezone_name_from_abbr) { char*abbr; @@ -2020,7 +2062,10 @@ RETURN_FALSE; } } +/* }}} */ +/* {{{ proto long timezone_offset_get(DateTi
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
bjori Sun Sep 10 16:34:08 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFH: date_timezone_set() needs both arguments MFH: throw exception in DateTimeZone::__construct() when no arguments are passed http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.28&r2=1.43.2.45.2.29&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.28 php-src/ext/date/php_date.c:1.43.2.45.2.29 --- php-src/ext/date/php_date.c:1.43.2.45.2.28 Tue Sep 5 12:39:20 2006 +++ php-src/ext/date/php_date.c Sun Sep 10 16:34:08 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.28 2006/09/05 12:39:20 nlopess Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.29 2006/09/10 16:34:08 bjori Exp $ */ #include "php.h" #include "php_streams.h" @@ -1848,7 +1848,7 @@ php_date_obj *dateobj; php_timezone_obj *tzobj; - if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "O|O", &object, date_ce_date, &timezone_object, date_ce_timezone) == FAILURE) { + if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "OO", &object, date_ce_date, &timezone_object, date_ce_timezone) == FAILURE) { RETURN_FALSE; } dateobj = (php_date_obj *) zend_object_store_get_object(object TSRMLS_CC); @@ -1978,13 +1978,13 @@ int tz_len; timelib_tzinfo *tzi = NULL; + php_set_error_handling(EH_THROW, NULL TSRMLS_CC); if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &tz, &tz_len)) { - php_set_error_handling(EH_THROW, NULL TSRMLS_CC); if (SUCCESS == timezone_initialize(&tzi, tz TSRMLS_CC)) { ((php_timezone_obj *) zend_object_store_get_object(getThis() TSRMLS_CC))->tz = tzi; } - php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); } + php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); } PHP_FUNCTION(timezone_name_get) -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/libxml libxml.c
nlopess Tue Sep 5 12:39:20 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c /php-src/ext/libxml libxml.c Log: int->zend_bool where possible http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.27&r2=1.43.2.45.2.28&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.27 php-src/ext/date/php_date.c:1.43.2.45.2.28 --- php-src/ext/date/php_date.c:1.43.2.45.2.27 Sun Sep 3 09:09:56 2006 +++ php-src/ext/date/php_date.c Tue Sep 5 12:39:20 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.27 2006/09/03 09:09:56 mike Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.28 2006/09/05 12:39:20 nlopess Exp $ */ #include "php.h" #include "php_streams.h" @@ -1366,7 +1366,7 @@ PHP_FUNCTION(localtime) { long timestamp = (long)time(NULL); - int associative = 0; + zend_bool associative = 0; timelib_tzinfo *tzi; timelib_time *ts; http://cvs.php.net/viewvc.cgi/php-src/ext/libxml/libxml.c?r1=1.32.2.7.2.6&r2=1.32.2.7.2.7&diff_format=u Index: php-src/ext/libxml/libxml.c diff -u php-src/ext/libxml/libxml.c:1.32.2.7.2.6 php-src/ext/libxml/libxml.c:1.32.2.7.2.7 --- php-src/ext/libxml/libxml.c:1.32.2.7.2.6Sun Aug 6 17:41:51 2006 +++ php-src/ext/libxml/libxml.c Tue Sep 5 12:39:20 2006 @@ -17,7 +17,7 @@ +--+ */ -/* $Id: libxml.c,v 1.32.2.7.2.6 2006/08/06 17:41:51 tony2001 Exp $ */ +/* $Id: libxml.c,v 1.32.2.7.2.7 2006/09/05 12:39:20 nlopess Exp $ */ #define IS_EXT_MODULE @@ -705,7 +705,7 @@ PHP_FUNCTION(libxml_use_internal_errors) { xmlStructuredErrorFunc current_handler; - int use_errors=0, retval; + zend_bool use_errors=0, retval; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|b", &use_errors) == FAILURE) { return; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
mikeSun Sep 3 09:09:57 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: - attempt to fix #38696 http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.26&r2=1.43.2.45.2.27&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.26 php-src/ext/date/php_date.c:1.43.2.45.2.27 --- php-src/ext/date/php_date.c:1.43.2.45.2.26 Tue Aug 22 16:47:23 2006 +++ php-src/ext/date/php_date.c Sun Sep 3 09:09:56 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.26 2006/08/22 16:47:23 iliaa Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.27 2006/09/03 09:09:56 mike Exp $ */ #include "php.h" #include "php_streams.h" @@ -1477,7 +1477,7 @@ date_object_handlers_timezone.clone_obj = date_object_clone_timezone; } -inline zend_object_value date_object_new_date_ex(zend_class_entry *class_type, php_date_obj **ptr TSRMLS_DC) +static inline zend_object_value date_object_new_date_ex(zend_class_entry *class_type, php_date_obj **ptr TSRMLS_DC) { php_date_obj *intern; zend_object_value retval; @@ -1524,7 +1524,7 @@ return new_ov; } -inline zend_object_value date_object_new_timezone_ex(zend_class_entry *class_type, php_timezone_obj **ptr TSRMLS_DC) +static inline zend_object_value date_object_new_timezone_ex(zend_class_entry *class_type, php_timezone_obj **ptr TSRMLS_DC) { php_timezone_obj *intern; zend_object_value retval; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/date/tests oo_002.phpt
mikeTue Aug 15 06:53:21 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c /php-src/ext/date/tests oo_002.phpt Log: MFH: - fix leak when cloning DateTimeZone, detected by Antony - don't fetch objects multiple times when cloning http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.24&r2=1.43.2.45.2.25&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.24 php-src/ext/date/php_date.c:1.43.2.45.2.25 --- php-src/ext/date/php_date.c:1.43.2.45.2.24 Mon Aug 14 20:03:11 2006 +++ php-src/ext/date/php_date.c Tue Aug 15 06:53:21 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.24 2006/08/14 20:03:11 mike Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.25 2006/08/15 06:53:21 mike Exp $ */ #include "php.h" #include "php_streams.h" @@ -1497,12 +1497,11 @@ static zend_object_value date_object_clone_date(zval *this_ptr TSRMLS_DC) { - zend_object *old_zo = zend_objects_get_address(this_ptr TSRMLS_CC); - php_date_obj *old_obj = (php_date_obj *) zend_object_store_get_object(this_ptr TSRMLS_CC); php_date_obj *new_obj = NULL; - zend_object_value new_ov = date_object_new_date_ex(old_zo->ce, &new_obj TSRMLS_CC); + php_date_obj *old_obj = (php_date_obj *) zend_object_store_get_object(this_ptr TSRMLS_CC); + zend_object_value new_ov = date_object_new_date_ex(old_obj->std.ce, &new_obj TSRMLS_CC); - zend_objects_clone_members(&new_obj->std, new_ov, old_zo, Z_OBJ_HANDLE_P(this_ptr) TSRMLS_CC); + zend_objects_clone_members(&new_obj->std, new_ov, &old_obj->std, Z_OBJ_HANDLE_P(this_ptr) TSRMLS_CC); /* this should probably moved to a new `timelib_time *timelime_time_clone(timelib_time *)` */ new_obj->time = timelib_time_ctor(); @@ -1545,13 +1544,12 @@ static zend_object_value date_object_clone_timezone(zval *this_ptr TSRMLS_DC) { - zend_object *old_zo = zend_objects_get_address(this_ptr TSRMLS_CC); - php_timezone_obj *old_obj = (php_timezone_obj *) zend_object_store_get_object(this_ptr TSRMLS_CC); php_timezone_obj *new_obj = NULL; - zend_object_value new_ov = date_object_new_timezone_ex(old_zo->ce, &new_obj TSRMLS_CC); + php_timezone_obj *old_obj = (php_timezone_obj *) zend_object_store_get_object(this_ptr TSRMLS_CC); + zend_object_value new_ov = date_object_new_timezone_ex(old_obj->std.ce, &new_obj TSRMLS_CC); - zend_objects_clone_members(&new_obj->std, new_ov, old_zo, Z_OBJ_HANDLE_P(this_ptr) TSRMLS_CC); - new_obj->tz = timelib_tzinfo_clone(old_obj->tz); + zend_objects_clone_members(&new_obj->std, new_ov, &old_obj->std, Z_OBJ_HANDLE_P(this_ptr) TSRMLS_CC); + new_obj->tz = old_obj->tz; return new_ov; } http://cvs.php.net/viewvc.cgi/php-src/ext/date/tests/oo_002.phpt?r1=1.1.2.2&r2=1.1.2.3&diff_format=u Index: php-src/ext/date/tests/oo_002.phpt diff -u php-src/ext/date/tests/oo_002.phpt:1.1.2.2 php-src/ext/date/tests/oo_002.phpt:1.1.2.3 --- php-src/ext/date/tests/oo_002.phpt:1.1.2.2 Mon Aug 14 20:03:11 2006 +++ php-src/ext/date/tests/oo_002.phpt Tue Aug 15 06:53:21 2006 @@ -14,7 +14,7 @@ $c->modify("1 second ago"); var_dump($d->format(DateTime::RFC822)); var_dump($c->format(DateTime::RFC822)); -$t = new DateTimeZone("Asia/Tokyo"); +$t = new _t("Asia/Tokyo"); var_dump($t->getName()); $c = clone $t; var_dump($c->getName()); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/date/tests oo_002.phpt
mikeMon Aug 14 20:03:11 2006 UTC Added files: (Branch: PHP_5_2) /php-src/ext/date/tests oo_002.phpt Modified files: /php-src/ext/date php_date.c Log: MFH: add cloning support to DateTime classes http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.23&r2=1.43.2.45.2.24&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.23 php-src/ext/date/php_date.c:1.43.2.45.2.24 --- php-src/ext/date/php_date.c:1.43.2.45.2.23 Tue Aug 1 16:45:40 2006 +++ php-src/ext/date/php_date.c Mon Aug 14 20:03:11 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.23 2006/08/01 16:45:40 mike Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.24 2006/08/14 20:03:11 mike Exp $ */ #include "php.h" #include "php_streams.h" @@ -296,6 +296,8 @@ static void date_object_free_storage_timezone(void *object TSRMLS_DC); static zend_object_value date_object_new_date(zend_class_entry *class_type TSRMLS_DC); static zend_object_value date_object_new_timezone(zend_class_entry *class_type TSRMLS_DC); +static zend_object_value date_object_clone_date(zval *this_ptr TSRMLS_DC); +static zend_object_value date_object_clone_timezone(zval *this_ptr TSRMLS_DC); /* {{{ Module struct */ zend_module_entry date_module_entry = { @@ -1442,7 +1444,7 @@ ce_date.create_object = date_object_new_date; date_ce_date = zend_register_internal_class_ex(&ce_date, NULL, NULL TSRMLS_CC); memcpy(&date_object_handlers_date, zend_get_std_object_handlers(), sizeof(zend_object_handlers)); - date_object_handlers_date.clone_obj = NULL; + date_object_handlers_date.clone_obj = date_object_clone_date; #define REGISTER_DATE_CLASS_CONST_STRING(const_name, value) \ zend_declare_class_constant_stringl(date_ce_date, const_name, sizeof(const_name)-1, value, sizeof(value)-1 TSRMLS_CC); @@ -1464,10 +1466,10 @@ ce_timezone.create_object = date_object_new_timezone; date_ce_timezone = zend_register_internal_class_ex(&ce_timezone, NULL, NULL TSRMLS_CC); memcpy(&date_object_handlers_timezone, zend_get_std_object_handlers(), sizeof(zend_object_handlers)); - date_object_handlers_timezone.clone_obj = NULL; + date_object_handlers_timezone.clone_obj = date_object_clone_timezone; } -static zend_object_value date_object_new_date(zend_class_entry *class_type TSRMLS_DC) +inline zend_object_value date_object_new_date_ex(zend_class_entry *class_type, php_date_obj **ptr TSRMLS_DC) { php_date_obj *intern; zend_object_value retval; @@ -1475,6 +1477,9 @@ intern = emalloc(sizeof(php_date_obj)); memset(intern, 0, sizeof(php_date_obj)); + if (ptr) { + *ptr = intern; + } zend_object_std_init(&intern->std, class_type TSRMLS_CC); zend_hash_copy(intern->std.properties, &class_type->default_properties, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *)); @@ -1485,7 +1490,34 @@ return retval; } -static zend_object_value date_object_new_timezone(zend_class_entry *class_type TSRMLS_DC) +static zend_object_value date_object_new_date(zend_class_entry *class_type TSRMLS_DC) +{ + return date_object_new_date_ex(class_type, NULL TSRMLS_CC); +} + +static zend_object_value date_object_clone_date(zval *this_ptr TSRMLS_DC) +{ + zend_object *old_zo = zend_objects_get_address(this_ptr TSRMLS_CC); + php_date_obj *old_obj = (php_date_obj *) zend_object_store_get_object(this_ptr TSRMLS_CC); + php_date_obj *new_obj = NULL; + zend_object_value new_ov = date_object_new_date_ex(old_zo->ce, &new_obj TSRMLS_CC); + + zend_objects_clone_members(&new_obj->std, new_ov, old_zo, Z_OBJ_HANDLE_P(this_ptr) TSRMLS_CC); + + /* this should probably moved to a new `timelib_time *timelime_time_clone(timelib_time *)` */ + new_obj->time = timelib_time_ctor(); + *new_obj->time = *old_obj->time; + if (old_obj->time->tz_abbr) { + new_obj->time->tz_abbr = strdup(old_obj->time->tz_abbr); + } + if (old_obj->time->tz_info) { + new_obj->time->tz_info = timelib_tzinfo_clone(old_obj->time->tz_info); + } + + return new_ov; +} + +inline zend_object_value date_object_new_timezone_ex(zend_class_entry *class_type, php_timezone_obj **ptr TSRMLS_DC) { php_timezone_obj *intern; zend_object_value retval; @@ -1493,6 +1525,9 @@ intern = emalloc(sizeof(php_timezone_obj)); memset(intern, 0, sizeof(php_timezone_obj)); + if (ptr) { + *ptr = intern; + } zend_object_std_init(&intern->std, class_type TSRMLS_CC); zend_hash_copy(intern->std.properties, &class_type->default_properties, (copy_ctor_func_t) zval_add_ref, (void *) &tmp, sizeof(zval *
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
mikeTue Aug 1 16:45:40 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFH: use library error message on time string parse failure http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.22&r2=1.43.2.45.2.23&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.22 php-src/ext/date/php_date.c:1.43.2.45.2.23 --- php-src/ext/date/php_date.c:1.43.2.45.2.22 Tue Aug 1 15:55:03 2006 +++ php-src/ext/date/php_date.c Tue Aug 1 16:45:40 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.22 2006/08/01 15:55:03 mike Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.23 2006/08/01 16:45:40 mike Exp $ */ #include "php.h" #include "php_streams.h" @@ -1556,7 +1556,9 @@ dateobj->time = timelib_strtotime(time_str_len ? time_str : "now", time_str_len ? time_str_len : sizeof("now") -1, &err, DATE_TIMEZONEDB); if (err) { if (err->error_count) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Failed to parse time string (%s)", time_str); + /* spit out the first library error message, at least */ + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Failed to parse time string (%s) at position %d (%c): %s", time_str, + err->error_messages[0].position, err->error_messages[0].character, err->error_messages[0].message); } timelib_error_container_dtor(err); } -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
mikeTue Aug 1 15:55:03 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFH: - fix leaks on multiple calls to DateTime::__construct() - throw exception on unparseable time strings in DateTime::__construct() http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.21&r2=1.43.2.45.2.22&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.21 php-src/ext/date/php_date.c:1.43.2.45.2.22 --- php-src/ext/date/php_date.c:1.43.2.45.2.21 Tue Aug 1 13:28:28 2006 +++ php-src/ext/date/php_date.c Tue Aug 1 15:55:03 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.21 2006/08/01 13:28:28 mike Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.22 2006/08/01 15:55:03 mike Exp $ */ #include "php.h" #include "php_streams.h" @@ -1544,9 +1544,22 @@ { timelib_time *now; timelib_tzinfo *tzi; + timelib_error_container *err = NULL; int free_tzi = 0; - dateobj->time = timelib_strtotime(time_str_len ? time_str : "now", time_str_len ? time_str_len : sizeof("now") -1, NULL, DATE_TIMEZONEDB); + if (dateobj->time) { + if (dateobj->time->tz_info) { + timelib_tzinfo_dtor(dateobj->time->tz_info); + } + timelib_time_dtor(dateobj->time); + } + dateobj->time = timelib_strtotime(time_str_len ? time_str : "now", time_str_len ? time_str_len : sizeof("now") -1, &err, DATE_TIMEZONEDB); + if (err) { + if (err->error_count) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Failed to parse time string (%s)", time_str); + } + timelib_error_container_dtor(err); + } if (timezone_object) { php_timezone_obj *tzobj; @@ -1599,8 +1612,9 @@ int time_str_len = 0; if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|sO", &time_str, &time_str_len, &timezone_object, date_ce_timezone)) { - /* TODO: throw Exception on unparseable dates */ + php_set_error_handling(EH_THROW, NULL TSRMLS_CC); date_initialize(zend_object_store_get_object(getThis() TSRMLS_CC), time_str, time_str_len, timezone_object TSRMLS_CC); + php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); } } -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c php_date.h /ext/date/tests oo_001.phpt
mikeTue Aug 1 13:28:28 2006 UTC Added files: (Branch: PHP_5_2) /php-src/ext/date/tests oo_001.phpt Modified files: /php-src/ext/date php_date.c php_date.h Log: MFH: - OO fixes: . no is_ref for objects in PHP5+ . initialize objects when created with the `new` operator . check for proper initialization in child classes - fix typo: transistion -> transition - add test http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.20&r2=1.43.2.45.2.21&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.20 php-src/ext/date/php_date.c:1.43.2.45.2.21 --- php-src/ext/date/php_date.c:1.43.2.45.2.20 Fri Jul 28 16:32:31 2006 +++ php-src/ext/date/php_date.c Tue Aug 1 13:28:28 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.20 2006/07/28 16:32:31 bjori Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.21 2006/08/01 13:28:28 mike Exp $ */ #include "php.h" #include "php_streams.h" @@ -182,7 +182,7 @@ PHP_FE(timezone_name_get, NULL) PHP_FE(timezone_name_from_abbr, NULL) PHP_FE(timezone_offset_get, NULL) - PHP_FE(timezone_transistions_get, NULL) + PHP_FE(timezone_transitions_get, NULL) PHP_FE(timezone_identifiers_list, NULL) PHP_FE(timezone_abbreviations_list, NULL) @@ -198,6 +198,7 @@ }; zend_function_entry date_funcs_date[] = { + PHP_ME(DateTime, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) ZEND_NAMED_FE(format, ZEND_FN(date_format), NULL) ZEND_NAMED_FE(modify, ZEND_FN(date_modify), NULL) ZEND_NAMED_FE(getTimezone, ZEND_FN(date_timezone_get), NULL) @@ -210,9 +211,10 @@ }; zend_function_entry date_funcs_timezone[] = { + PHP_ME(DateTimeZone, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) ZEND_NAMED_FE(getName, ZEND_FN(timezone_name_get), NULL) ZEND_NAMED_FE(getOffset, ZEND_FN(timezone_offset_get), NULL) - ZEND_NAMED_FE(getTransistions, ZEND_FN(timezone_transistions_get), NULL) + ZEND_NAMED_FE(getTransitions, ZEND_FN(timezone_transitions_get), NULL) ZEND_ME_MAPPING(listAbbreviations, timezone_abbreviations_list, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) ZEND_ME_MAPPING(listIdentifiers, timezone_identifiers_list, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) {NULL, NULL, NULL} @@ -284,6 +286,12 @@ } \ obj = (php_date_obj *) zend_object_store_get_object(object TSRMLS_CC); \ +#define DATE_CHECK_INITIALIZED(member, class_name) \ + if (!(member)) { \ + php_error_docref(NULL TSRMLS_CC, E_WARNING, "The " #class_name " object has not been correctly initialized by its constructor"); \ + RETURN_FALSE; \ + } + static void date_object_free_storage_date(void *object TSRMLS_DC); static void date_object_free_storage_timezone(void *object TSRMLS_DC); static zend_object_value date_object_new_date(zend_class_entry *class_type TSRMLS_DC); @@ -1528,25 +1536,16 @@ Z_TYPE_P(object) = IS_OBJECT; object_init_ex(object, pce); object->refcount = 1; - object->is_ref = 1; + object->is_ref = 0; return object; } -PHP_FUNCTION(date_create) +static void date_initialize(php_date_obj *dateobj, /*const*/ char *time_str, int time_str_len, zval *timezone_object TSRMLS_DC) { - php_date_obj *dateobj; - zval *timezone_object = NULL; timelib_time *now; timelib_tzinfo *tzi; - char *time_str; - int time_str_len = 0, free_tzi = 0;; - - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|sO", &time_str, &time_str_len, &timezone_object, date_ce_timezone) == FAILURE) { - RETURN_FALSE; - } - - date_instantiate(date_ce_date, return_value TSRMLS_CC); - dateobj = (php_date_obj *) zend_object_store_get_object(return_value TSRMLS_CC); + int free_tzi = 0; + dateobj->time = timelib_strtotime(time_str_len ? time_str : "now", time_str_len ? time_str_len : sizeof("now") -1, NULL, DATE_TIMEZONEDB); if (timezone_object) { @@ -1579,6 +1578,32 @@ timelib_time_dtor(now); } +PHP_FUNCTION(date_create) +{ + zval *timezone_object = NULL; + char *time_str = NULL; + int time_str_len = 0; + + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|sO", &time_str, &time_str_len, &timezone_object, date_ce_timezone) == FAILURE) { + RETURN_FALSE; + } + + date_instantiate(date_ce_date, return_value TSRMLS_CC); + date_initialize(zend_object_store_get_object(return_value TSRMLS_CC), time_str, time_str_len, timezone_object TSRMLS_CC); +} + +PHP_METHOD(DateTime, __construct) +{ + zval *timezone_object = NULL; + char *time_str = NULL; +
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/date/tests date_constants.phpt
bjori Fri Jul 28 16:32:31 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c /php-src/ext/date/tests date_constants.phpt Log: Fix DateTime::RSS Update tests http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.19&r2=1.43.2.45.2.20&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.19 php-src/ext/date/php_date.c:1.43.2.45.2.20 --- php-src/ext/date/php_date.c:1.43.2.45.2.19 Thu Jul 20 15:49:02 2006 +++ php-src/ext/date/php_date.c Fri Jul 28 16:32:31 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.19 2006/07/20 15:49:02 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.20 2006/07/28 16:32:31 bjori Exp $ */ #include "php.h" #include "php_streams.h" @@ -1448,7 +1448,7 @@ REGISTER_DATE_CLASS_CONST_STRING("RFC1123", DATE_FORMAT_RFC1123); REGISTER_DATE_CLASS_CONST_STRING("RFC2822", DATE_FORMAT_RFC2822); REGISTER_DATE_CLASS_CONST_STRING("RFC3339", DATE_FORMAT_RFC3339); - REGISTER_DATE_CLASS_CONST_STRING("RSS", DATE_FORMAT_RFC822); + REGISTER_DATE_CLASS_CONST_STRING("RSS", DATE_FORMAT_RFC1123); REGISTER_DATE_CLASS_CONST_STRING("W3C", DATE_FORMAT_RFC3339); http://cvs.php.net/viewvc.cgi/php-src/ext/date/tests/date_constants.phpt?r1=1.1.2.5&r2=1.1.2.6&diff_format=u Index: php-src/ext/date/tests/date_constants.phpt diff -u php-src/ext/date/tests/date_constants.phpt:1.1.2.5 php-src/ext/date/tests/date_constants.phpt:1.1.2.6 --- php-src/ext/date/tests/date_constants.phpt:1.1.2.5 Tue May 30 15:14:22 2006 +++ php-src/ext/date/tests/date_constants.phpt Fri Jul 28 16:32:31 2006 @@ -12,6 +12,7 @@ DATE_RFC1036, DATE_RFC1123, DATE_RFC2822, +DATE_RFC3339, DATE_RSS, DATE_W3C ); @@ -20,6 +21,22 @@ var_dump(date($const, strtotime("1 Jul 06 14:27:30 +0200"))); var_dump(date($const, strtotime("2006-05-30T14:32:13+02:00"))); } + +print "\n"; + +var_dump( +DATE_ATOM== DateTime::ATOM, +DATE_COOKIE == DateTime::COOKIE, +DATE_ISO8601 == DateTime::ISO8601, +DATE_RFC822 == DateTime::RFC822, +DATE_RFC850 == DateTime::RFC850, +DATE_RFC1036 == DateTime::RFC1036, +DATE_RFC1123 == DateTime::RFC1123, +DATE_RFC2822 == DateTime::RFC2822, +DATE_RFC3339 == DateTime::RFC3339, +DATE_RSS == DateTime::RSS, +DATE_W3C == DateTime::W3C +); ?> --EXPECT-- string(25) "2006-07-01T14:27:30+02:00" @@ -38,7 +55,21 @@ string(31) "Tue, 30 May 2006 14:32:13 +0200" string(31) "Sat, 01 Jul 2006 14:27:30 +0200" string(31) "Tue, 30 May 2006 14:32:13 +0200" +string(25) "2006-07-01T14:27:30+02:00" +string(25) "2006-05-30T14:32:13+02:00" string(31) "Sat, 01 Jul 2006 14:27:30 +0200" string(31) "Tue, 30 May 2006 14:32:13 +0200" string(25) "2006-07-01T14:27:30+02:00" string(25) "2006-05-30T14:32:13+02:00" + +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/date/tests date_create-1.phpt
derick Thu Jul 20 15:49:02 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c /php-src/ext/date/tests date_create-1.phpt Log: - MFH: Rename date classes to DateTime and DateTimeZone http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.18&r2=1.43.2.45.2.19&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.18 php-src/ext/date/php_date.c:1.43.2.45.2.19 --- php-src/ext/date/php_date.c:1.43.2.45.2.18 Thu Jul 20 07:20:23 2006 +++ php-src/ext/date/php_date.c Thu Jul 20 15:49:02 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.18 2006/07/20 07:20:23 tony2001 Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.19 2006/07/20 15:49:02 derick Exp $ */ #include "php.h" #include "php_streams.h" @@ -1430,7 +1430,7 @@ { zend_class_entry ce_date, ce_timezone; - INIT_CLASS_ENTRY(ce_date, "date", date_funcs_date); + INIT_CLASS_ENTRY(ce_date, "DateTime", date_funcs_date); ce_date.create_object = date_object_new_date; date_ce_date = zend_register_internal_class_ex(&ce_date, NULL, NULL TSRMLS_CC); memcpy(&date_object_handlers_date, zend_get_std_object_handlers(), sizeof(zend_object_handlers)); @@ -1452,7 +1452,7 @@ REGISTER_DATE_CLASS_CONST_STRING("W3C", DATE_FORMAT_RFC3339); - INIT_CLASS_ENTRY(ce_timezone, "timezone", date_funcs_timezone); + INIT_CLASS_ENTRY(ce_timezone, "DateTimeZone", date_funcs_timezone); ce_timezone.create_object = date_object_new_timezone; date_ce_timezone = zend_register_internal_class_ex(&ce_timezone, NULL, NULL TSRMLS_CC); memcpy(&date_object_handlers_timezone, zend_get_std_object_handlers(), sizeof(zend_object_handlers)); http://cvs.php.net/viewvc.cgi/php-src/ext/date/tests/date_create-1.phpt?r1=1.1.2.1&r2=1.1.2.1.2.1&diff_format=u Index: php-src/ext/date/tests/date_create-1.phpt diff -u php-src/ext/date/tests/date_create-1.phpt:1.1.2.1 php-src/ext/date/tests/date_create-1.phpt:1.1.2.1.2.1 --- php-src/ext/date/tests/date_create-1.phpt:1.1.2.1 Thu Nov 17 21:05:30 2005 +++ php-src/ext/date/tests/date_create-1.phpt Thu Jul 20 15:49:02 2006 @@ -28,7 +28,7 @@ $d[] = date_create("2005-07-14 22:30:41 America/Los_Angeles", $tz2); foreach($d as $date) { - echo $date->format(date::ISO8601), "\n"; + echo $date->format(DateTime::ISO8601), "\n"; } ?> --EXPECT-- -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
tony2001Thu Jul 20 07:20:23 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: break; break; -> break; http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.17&r2=1.43.2.45.2.18&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.17 php-src/ext/date/php_date.c:1.43.2.45.2.18 --- php-src/ext/date/php_date.c:1.43.2.45.2.17 Tue Jul 18 12:38:05 2006 +++ php-src/ext/date/php_date.c Thu Jul 20 07:20:23 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.17 2006/07/18 12:38:05 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.18 2006/07/20 07:20:23 tony2001 Exp $ */ #include "php.h" #include "php_streams.h" @@ -757,7 +757,7 @@ retval += 1000; } retval = retval % 1000; - snprintf(buffer, 32, "%03d", retval); break; + snprintf(buffer, 32, "%03d", retval); break; } case 'g': snprintf(buffer, 32, "%d", (t->h % 12) ? (int) t->h % 12 : 12); break; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c php_date.h
derick Tue Jul 18 12:38:05 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c php_date.h Log: - Enable all new date functions and classes http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.16&r2=1.43.2.45.2.17&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.16 php-src/ext/date/php_date.c:1.43.2.45.2.17 --- php-src/ext/date/php_date.c:1.43.2.45.2.16 Mon Jul 10 11:26:22 2006 +++ php-src/ext/date/php_date.c Tue Jul 18 12:38:05 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.16 2006/07/10 11:26:22 tony2001 Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.17 2006/07/18 12:38:05 derick Exp $ */ #include "php.h" #include "php_streams.h" @@ -165,7 +165,6 @@ PHP_FE(localtime, arginfo_localtime) PHP_FE(getdate, arginfo_getdate) -#ifdef EXPERIMENTAL_DATE_SUPPORT /* Advanced Interface */ PHP_FE(date_create, NULL) PHP_FE(date_parse, NULL) @@ -186,7 +185,6 @@ PHP_FE(timezone_transistions_get, NULL) PHP_FE(timezone_identifiers_list, NULL) PHP_FE(timezone_abbreviations_list, NULL) -#endif /* Options and Configuration */ PHP_FE(date_default_timezone_set, arginfo_date_default_timezone_set) @@ -199,7 +197,6 @@ {NULL, NULL, NULL} }; -#ifdef EXPERIMENTAL_DATE_SUPPORT zend_function_entry date_funcs_date[] = { ZEND_NAMED_FE(format, ZEND_FN(date_format), NULL) ZEND_NAMED_FE(modify, ZEND_FN(date_modify), NULL) @@ -222,7 +219,6 @@ }; static void date_register_classes(TSRMLS_D); -#endif static char* guess_timezone(const timelib_tzdb *tzdb TSRMLS_DC); /* }}} */ @@ -252,7 +248,6 @@ PHP_INI_END() /* }}} */ -#ifdef EXPERIMENTAL_DATE_SUPPORT zend_class_entry *date_ce_date, *date_ce_timezone; static zend_object_handlers date_object_handlers_date; @@ -293,7 +288,6 @@ static void date_object_free_storage_timezone(void *object TSRMLS_DC); static zend_object_value date_object_new_date(zend_class_entry *class_type TSRMLS_DC); static zend_object_value date_object_new_timezone(zend_class_entry *class_type TSRMLS_DC); -#endif /* {{{ Module struct */ zend_module_entry date_module_entry = { @@ -457,9 +451,7 @@ PHP_MINIT_FUNCTION(date) { REGISTER_INI_ENTRIES(); -#ifdef EXPERIMENTAL_DATE_SUPPORT date_register_classes(TSRMLS_C); -#endif /* * RFC4287, Section 3.3: http://www.ietf.org/rfc/rfc4287.txt * A Date construct is an element whose content MUST conform to the @@ -1434,7 +1426,6 @@ } /* }}} */ -#ifdef EXPERIMENTAL_DATE_SUPPORT static void date_register_classes(TSRMLS_D) { zend_class_entry ce_date, ce_timezone; @@ -1995,7 +1986,6 @@ entry++; } while (entry->name); } -#endif /* {{{ proto bool date_default_timezone_set(string timezone_identifier) http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.h?r1=1.17.2.11&r2=1.17.2.11.2.1&diff_format=u Index: php-src/ext/date/php_date.h diff -u php-src/ext/date/php_date.h:1.17.2.11 php-src/ext/date/php_date.h:1.17.2.11.2.1 --- php-src/ext/date/php_date.h:1.17.2.11 Tue Apr 11 18:03:46 2006 +++ php-src/ext/date/php_date.h Tue Jul 18 12:38:05 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.h,v 1.17.2.11 2006/04/11 18:03:46 derick Exp $ */ +/* $Id: php_date.h,v 1.17.2.11.2.1 2006/07/18 12:38:05 derick Exp $ */ #ifndef PHP_DATE_H #define PHP_DATE_H @@ -46,7 +46,6 @@ PHP_FUNCTION(localtime); PHP_FUNCTION(getdate); -#ifdef EXPERIMENTAL_DATE_SUPPORT /* Advanced Interface */ PHP_FUNCTION(date_create); PHP_FUNCTION(date_parse); @@ -67,7 +66,6 @@ PHP_FUNCTION(timezone_transistions_get); PHP_FUNCTION(timezone_identifiers_list); PHP_FUNCTION(timezone_abbreviations_list); -#endif /* Options and Configuration */ PHP_FUNCTION(date_default_timezone_set); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
tony2001Mon Jul 10 11:26:22 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFH: initialize vars http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.15&r2=1.43.2.45.2.16&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.15 php-src/ext/date/php_date.c:1.43.2.45.2.16 --- php-src/ext/date/php_date.c:1.43.2.45.2.15 Sun Jul 2 00:11:05 2006 +++ php-src/ext/date/php_date.c Mon Jul 10 11:26:22 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.15 2006/07/02 00:11:05 bjori Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.16 2006/07/10 11:26:22 tony2001 Exp $ */ #include "php.h" #include "php_streams.h" @@ -696,7 +696,7 @@ smart_strstring = {0}; int i; char buffer[33]; - timelib_time_offset *offset; + timelib_time_offset *offset = NULL; timelib_sll isoweek, isoyear; int rfc_colon = 0; @@ -878,7 +878,7 @@ timelib_time *t; timelib_tzinfo *tzi; int retval = -1; - timelib_time_offset *offset; + timelib_time_offset *offset = NULL; timelib_sll isoweek, isoyear; t = timelib_time_ctor(); @@ -1120,7 +1120,7 @@ { long hou, min, sec, mon, day, yea, dst = -1; timelib_time *now; - timelib_tzinfo *tzi; + timelib_tzinfo *tzi = NULL; long ts, adjust_seconds = 0; int error; @@ -1253,7 +1253,7 @@ size_t buf_len = 64, real_len; timelib_time*ts; timelib_tzinfo *tzi; - timelib_time_offset *offset; + timelib_time_offset *offset = NULL; timestamp = (long) time(NULL); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/fdf fdf.c /ext/gd gd.c /ext/standard basic_functions.c
bjori Sun Jul 2 00:11:06 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c /php-src/ext/standard basic_functions.c /php-src/ext/fdffdf.c /php-src/ext/gd gd.c Log: MFH: arginfo fixes http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.14&r2=1.43.2.45.2.15&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.14 php-src/ext/date/php_date.c:1.43.2.45.2.15 --- php-src/ext/date/php_date.c:1.43.2.45.2.14 Tue Jun 27 21:00:02 2006 +++ php-src/ext/date/php_date.c Sun Jul 2 00:11:05 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.14 2006/06/27 21:00:02 nlopess Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.15 2006/07/02 00:11:05 bjori Exp $ */ #include "php.h" #include "php_streams.h" @@ -119,7 +119,7 @@ static ZEND_BEGIN_ARG_INFO_EX(arginfo_date_sunrise, 0, 0, 1) - ZEND_ARG_INFO(0, mixed time) + ZEND_ARG_INFO(0, time) ZEND_ARG_INFO(0, format) ZEND_ARG_INFO(0, latitude) ZEND_ARG_INFO(0, longitude) @@ -129,7 +129,7 @@ static ZEND_BEGIN_ARG_INFO_EX(arginfo_date_sunset, 0, 0, 1) - ZEND_ARG_INFO(0, mixed time) + ZEND_ARG_INFO(0, time) ZEND_ARG_INFO(0, format) ZEND_ARG_INFO(0, latitude) ZEND_ARG_INFO(0, longitude) http://cvs.php.net/viewvc.cgi/php-src/ext/standard/basic_functions.c?r1=1.725.2.31.2.14&r2=1.725.2.31.2.15&diff_format=u Index: php-src/ext/standard/basic_functions.c diff -u php-src/ext/standard/basic_functions.c:1.725.2.31.2.14 php-src/ext/standard/basic_functions.c:1.725.2.31.2.15 --- php-src/ext/standard/basic_functions.c:1.725.2.31.2.14 Fri Jun 30 18:17:38 2006 +++ php-src/ext/standard/basic_functions.c Sun Jul 2 00:11:05 2006 @@ -17,7 +17,7 @@ +--+ */ -/* $Id: basic_functions.c,v 1.725.2.31.2.14 2006/06/30 18:17:38 bjori Exp $ */ +/* $Id: basic_functions.c,v 1.725.2.31.2.15 2006/07/02 00:11:05 bjori Exp $ */ #include "php.h" #include "php_streams.h" @@ -2082,8 +2082,8 @@ static ZEND_BEGIN_ARG_INFO_EX(arginfo_pack, 0, 0, 2) ZEND_ARG_INFO(0, format) - ZEND_ARG_INFO(0, mixed arg1) - ZEND_ARG_INFO(0, mixed ...) + ZEND_ARG_INFO(0, arg1) + ZEND_ARG_INFO(0, ...) ZEND_END_ARG_INFO() static http://cvs.php.net/viewvc.cgi/php-src/ext/fdf/fdf.c?r1=1.89.2.2.2.2&r2=1.89.2.2.2.3&diff_format=u Index: php-src/ext/fdf/fdf.c diff -u php-src/ext/fdf/fdf.c:1.89.2.2.2.2 php-src/ext/fdf/fdf.c:1.89.2.2.2.3 --- php-src/ext/fdf/fdf.c:1.89.2.2.2.2 Thu Jun 15 18:33:07 2006 +++ php-src/ext/fdf/fdf.c Sun Jul 2 00:11:06 2006 @@ -17,7 +17,7 @@ +--+ */ -/* $Id: fdf.c,v 1.89.2.2.2.2 2006/06/15 18:33:07 dmitry Exp $ */ +/* $Id: fdf.c,v 1.89.2.2.2.3 2006/07/02 00:11:06 bjori Exp $ */ /* FdfTk lib 2.0 is a Complete C/C++ FDF Toolkit available from http://beta1.adobe.com/ada/acrosdk/forms.html. */ @@ -186,7 +186,7 @@ static ZEND_BEGIN_ARG_INFO(arginfo_fdf_set_submit_form_action, 0) - ZEND_ARG_INFO(0, resource fdfdoc) + ZEND_ARG_INFO(0, fdfdoc) ZEND_ARG_INFO(0, fieldname) ZEND_ARG_INFO(0, whichtrigger) ZEND_ARG_INFO(0, url) http://cvs.php.net/viewvc.cgi/php-src/ext/gd/gd.c?r1=1.312.2.20.2.2&r2=1.312.2.20.2.3&diff_format=u Index: php-src/ext/gd/gd.c diff -u php-src/ext/gd/gd.c:1.312.2.20.2.2 php-src/ext/gd/gd.c:1.312.2.20.2.3 --- php-src/ext/gd/gd.c:1.312.2.20.2.2 Thu Jun 15 15:31:54 2006 +++ php-src/ext/gd/gd.c Sun Jul 2 00:11:06 2006 @@ -18,7 +18,7 @@ +--+ */ -/* $Id: gd.c,v 1.312.2.20.2.2 2006/06/15 15:31:54 bjori Exp $ */ +/* $Id: gd.c,v 1.312.2.20.2.3 2006/07/02 00:11:06 bjori Exp $ */ /* gd 1.2 is copyright 1994, 1995, Quest Protein Database Center, Cold Spring Harbor Labs. */ @@ -808,8 +808,8 @@ #if HAVE_LIBGD20 && HAVE_LIBFREETYPE && HAVE_GD_STRINGFTEX static ZEND_BEGIN_ARG_INFO_EX(arginfo_imageftbbox, 0, 0, 4) - ZEND_ARG_INFO(0, float size) - ZEND_ARG_INFO(0, float angle) + ZEND_ARG_INFO(0, size) + ZEND_ARG_INFO(0, angle) ZEND_ARG_INFO(0, font_file) ZEND_ARG_INFO(0, text) ZEND_ARG_INFO(0, extrainfo) /* ARRAY_INFO(0, extrainfo, 0) */ @@ -818,8 +818,8 @@ static ZEND_BEGIN_ARG_INFO_EX(arginfo_imagefttext, 0, 0, 8) ZEND_ARG_INFO(0, im) - ZEND_ARG_INFO(0, float size) - ZEND_ARG_INFO(0, float angle) + ZEND_ARG_INFO(0, size) + ZEND_ARG_INFO(0, angle) ZEND_ARG_INFO(0, x) ZEND_ARG_INFO(0, y) ZEND_ARG_INFO(0, col) @@ -840,8 +840,8 @@ static ZEND_BEGIN_ARG_INFO(arginfo_imagettftext, 0) ZEND_ARG_INFO(0, im) - ZEND_ARG_INFO(0, float size) - ZEND_ARG_I
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/date/lib dow.c parse_tz.c timezonedb.h
On Tue, 27 Jun 2006, Nuno Lopes wrote: nlopess Tue Jun 27 19:48:02 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c /php-src/ext/date/lib dow.c parse_tz.c timezonedb.h Log: add a couple of static and const keywords, to let the compiler optimize better will MFB in a hour, or so Ho... please discuss those things first before just committing. You're modifying all kinds of generated files here as well. So, please come up with some proposal first before committing (and I'd say revert for now) regards, Derick Sure, I've reverted it. I didn't thought this would be so confusing, thats why I didn't ask anything in the mailing list. Anyway, the patch is here: http://mega.ist.utl.pt/~ncpl/php_date_consts.txt It simply add a couple of static and const keywords to allow better optimizations by the compilers (this is specially important when building the shared library). Please take a look at the patch and tell me what you think (there were no test regressions, btw). Thanks, Nuno -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/date/lib dow.c parse_tz.c timezonedb.h
nlopess Tue Jun 27 21:00:04 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c /php-src/ext/date/lib dow.c parse_tz.c timezonedb.h Log: revert per Derick request http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.13&r2=1.43.2.45.2.14&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.13 php-src/ext/date/php_date.c:1.43.2.45.2.14 --- php-src/ext/date/php_date.c:1.43.2.45.2.13 Tue Jun 27 19:48:01 2006 +++ php-src/ext/date/php_date.c Tue Jun 27 21:00:02 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.13 2006/06/27 19:48:01 nlopess Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.14 2006/06/27 21:00:02 nlopess Exp $ */ #include "php.h" #include "php_streams.h" @@ -230,8 +230,8 @@ static PHP_GINIT_FUNCTION(date); /* True global */ -static timelib_tzdb *php_date_global_timezone_db; -static int php_date_global_timezone_db_enabled; +timelib_tzdb *php_date_global_timezone_db; +int php_date_global_timezone_db_enabled; #define DATE_DEFAULT_LATITUDE "31.7667" #define DATE_DEFAULT_LONGITUDE "35.2333" @@ -637,25 +637,25 @@ /* {{{ date() and gmdate() data */ #include "ext/standard/php_smart_str.h" -static const char *mon_full_names[] = { +static char *mon_full_names[] = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" }; -static const char *mon_short_names[] = { +static char *mon_short_names[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }; -static const char *day_full_names[] = { +static char *day_full_names[] = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }; -static const char *day_short_names[] = { +static char *day_short_names[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" }; -static const char *english_suffix(timelib_sll number) +static char *english_suffix(timelib_sll number) { if (number >= 10 && number <= 19) { return "th"; @@ -671,16 +671,16 @@ /* }}} */ /* {{{ day of week helpers */ -static const char *php_date_full_day_name(timelib_sll y, timelib_sll m, timelib_sll d) +char *php_date_full_day_name(timelib_sll y, timelib_sll m, timelib_sll d) { timelib_sll day_of_week = timelib_day_of_week(y, m, d); if (day_of_week < 0) { return "Unknown"; } - return day_full_names[day_of_week]; + return day_full_names[day_of_week]; } -static const char *php_date_short_day_name(timelib_sll y, timelib_sll m, timelib_sll d) +char *php_date_short_day_name(timelib_sll y, timelib_sll m, timelib_sll d) { timelib_sll day_of_week = timelib_day_of_week(y, m, d); if (day_of_week < 0) { http://cvs.php.net/viewvc.cgi/php-src/ext/date/lib/dow.c?r1=1.8.2.3.2.1&r2=1.8.2.3.2.2&diff_format=u Index: php-src/ext/date/lib/dow.c diff -u php-src/ext/date/lib/dow.c:1.8.2.3.2.1 php-src/ext/date/lib/dow.c:1.8.2.3.2.2 --- php-src/ext/date/lib/dow.c:1.8.2.3.2.1 Tue Jun 27 19:48:01 2006 +++ php-src/ext/date/lib/dow.c Tue Jun 27 21:00:03 2006 @@ -16,12 +16,12 @@ +--+ */ -/* $Id: dow.c,v 1.8.2.3.2.1 2006/06/27 19:48:01 nlopess Exp $ */ +/* $Id: dow.c,v 1.8.2.3.2.2 2006/06/27 21:00:03 nlopess Exp $ */ #include "timelib.h" -static const int m_table_common[13] = { -1, 0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5 }; /* 1 = jan */ -static const int m_table_leap[13] = { -1, 6, 2, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5 }; /* 1 = jan */ +static int m_table_common[13] = { -1, 0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5 }; /* 1 = jan */ +static int m_table_leap[13] = { -1, 6, 2, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5 }; /* 1 = jan */ static timelib_sll century_value(timelib_sll j) { @@ -62,10 +62,10 @@ } /* jan feb mar apr may jun jul aug sep oct nov dec */ -static const int d_table_common[13] = { 0, 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334 }; -static const int d_table_leap[13]= { 0, 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335 }; -static const int ml_table_common[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; -static const int ml_table_leap[13] = { 0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; +static int d_table_common[13] = { 0, 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334 }; +static int d_table_leap[13]= { 0, 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335 }; +static int ml_table_common[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; +static int ml_table_leap[13] = { 0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; tim
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/date/lib dow.c parse_tz.c timezonedb.h
On Tue, 27 Jun 2006, Nuno Lopes wrote: > nlopess Tue Jun 27 19:48:02 2006 UTC > > Modified files: (Branch: PHP_5_2) > /php-src/ext/date php_date.c > /php-src/ext/date/lib dow.c parse_tz.c timezonedb.h > Log: > add a couple of static and const keywords, to let the compiler optimize > better > will MFB in a hour, or so Ho... please discuss those things first before just committing. You're modifying all kinds of generated files here as well. So, please come up with some proposal first before committing (and I'd say revert for now) regards, Derick -- Derick Rethans http://derickrethans.nl | http://ez.no | http://xdebug.org -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/date/lib dow.c parse_tz.c timezonedb.h
nlopess Tue Jun 27 19:48:02 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c /php-src/ext/date/lib dow.c parse_tz.c timezonedb.h Log: add a couple of static and const keywords, to let the compiler optimize better will MFB in a hour, or so http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.12&r2=1.43.2.45.2.13&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.12 php-src/ext/date/php_date.c:1.43.2.45.2.13 --- php-src/ext/date/php_date.c:1.43.2.45.2.12 Fri Jun 23 13:53:43 2006 +++ php-src/ext/date/php_date.c Tue Jun 27 19:48:01 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.12 2006/06/23 13:53:43 tony2001 Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.13 2006/06/27 19:48:01 nlopess Exp $ */ #include "php.h" #include "php_streams.h" @@ -230,8 +230,8 @@ static PHP_GINIT_FUNCTION(date); /* True global */ -timelib_tzdb *php_date_global_timezone_db; -int php_date_global_timezone_db_enabled; +static timelib_tzdb *php_date_global_timezone_db; +static int php_date_global_timezone_db_enabled; #define DATE_DEFAULT_LATITUDE "31.7667" #define DATE_DEFAULT_LONGITUDE "35.2333" @@ -637,25 +637,25 @@ /* {{{ date() and gmdate() data */ #include "ext/standard/php_smart_str.h" -static char *mon_full_names[] = { +static const char *mon_full_names[] = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" }; -static char *mon_short_names[] = { +static const char *mon_short_names[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }; -static char *day_full_names[] = { +static const char *day_full_names[] = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }; -static char *day_short_names[] = { +static const char *day_short_names[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" }; -static char *english_suffix(timelib_sll number) +static const char *english_suffix(timelib_sll number) { if (number >= 10 && number <= 19) { return "th"; @@ -671,16 +671,16 @@ /* }}} */ /* {{{ day of week helpers */ -char *php_date_full_day_name(timelib_sll y, timelib_sll m, timelib_sll d) +static const char *php_date_full_day_name(timelib_sll y, timelib_sll m, timelib_sll d) { timelib_sll day_of_week = timelib_day_of_week(y, m, d); if (day_of_week < 0) { return "Unknown"; } - return day_full_names[day_of_week]; + return day_full_names[day_of_week]; } -char *php_date_short_day_name(timelib_sll y, timelib_sll m, timelib_sll d) +static const char *php_date_short_day_name(timelib_sll y, timelib_sll m, timelib_sll d) { timelib_sll day_of_week = timelib_day_of_week(y, m, d); if (day_of_week < 0) { http://cvs.php.net/viewvc.cgi/php-src/ext/date/lib/dow.c?r1=1.8.2.3&r2=1.8.2.3.2.1&diff_format=u Index: php-src/ext/date/lib/dow.c diff -u php-src/ext/date/lib/dow.c:1.8.2.3 php-src/ext/date/lib/dow.c:1.8.2.3.2.1 --- php-src/ext/date/lib/dow.c:1.8.2.3 Sun Jan 1 12:50:01 2006 +++ php-src/ext/date/lib/dow.c Tue Jun 27 19:48:01 2006 @@ -16,12 +16,12 @@ +--+ */ -/* $Id: dow.c,v 1.8.2.3 2006/01/01 12:50:01 sniper Exp $ */ +/* $Id: dow.c,v 1.8.2.3.2.1 2006/06/27 19:48:01 nlopess Exp $ */ #include "timelib.h" -static int m_table_common[13] = { -1, 0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5 }; /* 1 = jan */ -static int m_table_leap[13] = { -1, 6, 2, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5 }; /* 1 = jan */ +static const int m_table_common[13] = { -1, 0, 3, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5 }; /* 1 = jan */ +static const int m_table_leap[13] = { -1, 6, 2, 3, 6, 1, 4, 6, 2, 5, 0, 3, 5 }; /* 1 = jan */ static timelib_sll century_value(timelib_sll j) { @@ -62,10 +62,10 @@ } /* jan feb mar apr may jun jul aug sep oct nov dec */ -static int d_table_common[13] = { 0, 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334 }; -static int d_table_leap[13]= { 0, 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335 }; -static int ml_table_common[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; -static int ml_table_leap[13] = { 0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; +static const int d_table_common[13] = { 0, 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334 }; +static const int d_table_leap[13]= { 0, 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335 }; +static const int ml_table_common[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; +static const int ml_table_leap[13] = { 0, 31, 29
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
tony2001Fri Jun 23 13:53:43 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: plug leak http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.11&r2=1.43.2.45.2.12&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.11 php-src/ext/date/php_date.c:1.43.2.45.2.12 --- php-src/ext/date/php_date.c:1.43.2.45.2.11 Thu Jun 22 21:04:32 2006 +++ php-src/ext/date/php_date.c Fri Jun 23 13:53:43 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.11 2006/06/22 21:04:32 tony2001 Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.12 2006/06/23 13:53:43 tony2001 Exp $ */ #include "php.h" #include "php_streams.h" @@ -1084,6 +1084,7 @@ } if (!time_len) { + timelib_time_dtor(now); RETURN_FALSE; } -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
tony2001Thu Jun 22 21:04:32 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFH: add wrappers for timelib_day_of_week_ex() http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.10&r2=1.43.2.45.2.11&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.10 php-src/ext/date/php_date.c:1.43.2.45.2.11 --- php-src/ext/date/php_date.c:1.43.2.45.2.10 Thu Jun 22 18:44:31 2006 +++ php-src/ext/date/php_date.c Thu Jun 22 21:04:32 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.10 2006/06/22 18:44:31 tony2001 Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.11 2006/06/22 21:04:32 tony2001 Exp $ */ #include "php.h" #include "php_streams.h" @@ -670,6 +670,26 @@ } /* }}} */ +/* {{{ day of week helpers */ +char *php_date_full_day_name(timelib_sll y, timelib_sll m, timelib_sll d) +{ + timelib_sll day_of_week = timelib_day_of_week(y, m, d); + if (day_of_week < 0) { + return "Unknown"; + } + return day_full_names[day_of_week]; +} + +char *php_date_short_day_name(timelib_sll y, timelib_sll m, timelib_sll d) +{ + timelib_sll day_of_week = timelib_day_of_week(y, m, d); + if (day_of_week < 0) { + return "Unknown"; + } + return day_short_names[day_of_week]; +} +/* }}} */ + /* {{{ date_format - (gm)date helper */ static char *date_format(char *format, int format_len, timelib_time *t, int localtime) { @@ -712,9 +732,9 @@ switch (format[i]) { /* day */ case 'd': snprintf(buffer, 32, "%02d", (int) t->d); break; - case 'D': snprintf(buffer, 32, "%s", day_short_names[timelib_day_of_week(t->y, t->m, t->d)]); break; + case 'D': snprintf(buffer, 32, "%s", php_date_short_day_name(t->y, t->m, t->d)); break; case 'j': snprintf(buffer, 32, "%d", (int) t->d); break; - case 'l': snprintf(buffer, 32, "%s", day_full_names[timelib_day_of_week(t->y, t->m, t->d)]); break; + case 'l': snprintf(buffer, 32, "%s", php_date_full_day_name(t->y, t->m, t->d)); break; case 'S': snprintf(buffer, 32, "%s", english_suffix(t->d)); break; case 'w': snprintf(buffer, 32, "%d", (int) timelib_day_of_week(t->y, t->m, t->d)); break; case 'N': snprintf(buffer, 32, "%d", (int) timelib_iso_day_of_week(t->y, t->m, t->d)); break; @@ -779,7 +799,7 @@ ); break; case 'r': snprintf(buffer, 32, "%3s, %02d %3s %04d %02d:%02d:%02d %c%02d%02d", - day_short_names[timelib_day_of_week(t->y, t->m, t->d)], + php_date_short_day_name(t->y, t->m, t->d), (int) t->d, mon_short_names[t->m - 1], (int) t->y, (int) t->h, (int) t->i, (int) t->s, localtime ? ((offset->offset < 0) ? '-' : '+') : '+', @@ -1405,7 +1425,7 @@ add_assoc_long(return_value, "mon", ts->m); add_assoc_long(return_value, "year", ts->y); add_assoc_long(return_value, "yday", timelib_day_of_year(ts->y, ts->m, ts->d)); - add_assoc_string(return_value, "weekday", day_full_names[timelib_day_of_week(ts->y, ts->m, ts->d)], 1); + add_assoc_string(return_value, "weekday", php_date_full_day_name(ts->y, ts->m, ts->d), 1); add_assoc_string(return_value, "month", mon_full_names[ts->m - 1], 1); add_index_long(return_value, 0, timestamp); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
Yeah it took me a while to diff this too :) On Thu, 22 Jun 2006, Antony Dovgal wrote: On 22.06.2006 23:20, Ilia Alshanetsky wrote: ha? Nuked whitespace at the end of this line =) On 22-Jun-06, at 8:44 PM, Antony Dovgal wrote: - timelib_time_dtor(now); + timelib_time_dtor(now); Ilia Alshanetsky -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
On 22.06.2006 23:20, Ilia Alshanetsky wrote: ha? Nuked whitespace at the end of this line =) On 22-Jun-06, at 8:44 PM, Antony Dovgal wrote: - timelib_time_dtor(now); + timelib_time_dtor(now); Ilia Alshanetsky -- Wbr, Antony Dovgal -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
ha? On 22-Jun-06, at 8:44 PM, Antony Dovgal wrote: - timelib_time_dtor(now); + timelib_time_dtor(now); Ilia Alshanetsky
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
tony2001Thu Jun 22 18:44:32 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFH: don't try to parse empty string, return false immediately (fixes off-by-one) http://cvs.php.net/viewvc.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.9&r2=1.43.2.45.2.10&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.9 php-src/ext/date/php_date.c:1.43.2.45.2.10 --- php-src/ext/date/php_date.c:1.43.2.45.2.9 Thu Jun 15 18:33:06 2006 +++ php-src/ext/date/php_date.c Thu Jun 22 18:44:31 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.9 2006/06/15 18:33:06 dmitry Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.10 2006/06/22 18:44:31 tony2001 Exp $ */ #include "php.h" #include "php_streams.h" @@ -1063,6 +1063,10 @@ RETURN_FALSE; } + if (!time_len) { + RETURN_FALSE; + } + t = timelib_strtotime(times, time_len, &error, DATE_TIMEZONEDB); error1 = error->error_count; timelib_error_container_dtor(error); @@ -1078,7 +1082,7 @@ timelib_tzinfo_dtor(t->tz_info); } - timelib_time_dtor(now); + timelib_time_dtor(now); timelib_time_dtor(t); if (error1 || error2) { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
bjori Sun Jun 11 20:12:17 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: MFH: fix typo http://cvs.php.net/viewcvs.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.7&r2=1.43.2.45.2.8&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.7 php-src/ext/date/php_date.c:1.43.2.45.2.8 --- php-src/ext/date/php_date.c:1.43.2.45.2.7 Sun Jun 11 01:42:16 2006 +++ php-src/ext/date/php_date.c Sun Jun 11 20:12:17 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.7 2006/06/11 01:42:16 bjori Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.8 2006/06/11 20:12:17 bjori Exp $ */ #include "php.h" #include "php_streams.h" @@ -157,7 +157,7 @@ PHP_FE(checkdate, arginfo_checkdate) #ifdef HAVE_STRFTIME - PHP_FE(strftime, arginfo_strtotime) + PHP_FE(strftime, arginfo_strftime) PHP_FE(gmstrftime, arginfo_gmstrftime) #endif -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/date/tests date_constants.phpt
bjori Tue May 30 15:14:22 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c /php-src/ext/date/tests date_constants.phpt Log: MFH: Play nice, use 4digit years in DATE_RSS http://cvs.php.net/viewcvs.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.5&r2=1.43.2.45.2.6&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.5 php-src/ext/date/php_date.c:1.43.2.45.2.6 --- php-src/ext/date/php_date.c:1.43.2.45.2.5 Tue May 30 14:46:45 2006 +++ php-src/ext/date/php_date.c Tue May 30 15:14:22 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.5 2006/05/30 14:46:45 bjori Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.6 2006/05/30 15:14:22 bjori Exp $ */ #include "php.h" #include "php_streams.h" @@ -341,10 +341,10 @@ #endif /* * RFC4287, Section 3.3: http://www.ietf.org/rfc/rfc4287.txt - * A Date construct is an element whose content MUST conform to the - * "date-time" production in [RFC3339]. In addition, an uppercase "T" - * character MUST be used to separate date and time, and an uppercase - * "Z" character MUST be present in the absence of a numeric time zone offset. + * A Date construct is an element whose content MUST conform to the + * "date-time" production in [RFC3339]. In addition, an uppercase "T" + * character MUST be used to separate date and time, and an uppercase + * "Z" character MUST be present in the absence of a numeric time zone offset. */ REGISTER_STRING_CONSTANT("DATE_ATOM",DATE_FORMAT_RFC3339, CONST_CS | CONST_PERSISTENT); /* @@ -363,9 +363,10 @@ REGISTER_STRING_CONSTANT("DATE_RFC3339", DATE_FORMAT_RFC3339, CONST_CS | CONST_PERSISTENT); /* * RSS 2.0 Specification: http://blogs.law.harvard.edu/tech/rss - * "All date-times in RSS conform to the Date and Time Specification of RFC 822" + * "All date-times in RSS conform to the Date and Time Specification of RFC 822, + * with the exception that the year may be expressed with two characters or four characters (four preferred)" */ - REGISTER_STRING_CONSTANT("DATE_RSS", DATE_FORMAT_RFC822, CONST_CS | CONST_PERSISTENT); + REGISTER_STRING_CONSTANT("DATE_RSS", DATE_FORMAT_RFC1123, CONST_CS | CONST_PERSISTENT); REGISTER_STRING_CONSTANT("DATE_W3C", DATE_FORMAT_RFC3339, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("SUNFUNCS_RET_TIMESTAMP", SUNFUNCS_RET_TIMESTAMP, CONST_CS | CONST_PERSISTENT); http://cvs.php.net/viewcvs.cgi/php-src/ext/date/tests/date_constants.phpt?r1=1.1.2.4&r2=1.1.2.5&diff_format=u Index: php-src/ext/date/tests/date_constants.phpt diff -u php-src/ext/date/tests/date_constants.phpt:1.1.2.4 php-src/ext/date/tests/date_constants.phpt:1.1.2.5 --- php-src/ext/date/tests/date_constants.phpt:1.1.2.4 Tue May 30 14:46:46 2006 +++ php-src/ext/date/tests/date_constants.phpt Tue May 30 15:14:22 2006 @@ -38,7 +38,7 @@ string(31) "Tue, 30 May 2006 14:32:13 +0200" string(31) "Sat, 01 Jul 2006 14:27:30 +0200" string(31) "Tue, 30 May 2006 14:32:13 +0200" -string(29) "Sat, 01 Jul 06 14:27:30 +0200" -string(29) "Tue, 30 May 06 14:32:13 +0200" +string(31) "Sat, 01 Jul 2006 14:27:30 +0200" +string(31) "Tue, 30 May 2006 14:32:13 +0200" string(25) "2006-07-01T14:27:30+02:00" string(25) "2006-05-30T14:32:13+02:00" -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c /ext/date/tests date_constants.phpt
bjori Tue May 30 14:46:46 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c /php-src/ext/date/tests date_constants.phpt Log: MFH: Fixed DATE_COOKIE, DATE_RSS & tests http://cvs.php.net/viewcvs.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.4&r2=1.43.2.45.2.5&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.4 php-src/ext/date/php_date.c:1.43.2.45.2.5 --- php-src/ext/date/php_date.c:1.43.2.45.2.4 Tue May 30 13:12:21 2006 +++ php-src/ext/date/php_date.c Tue May 30 14:46:45 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.4 2006/05/30 13:12:21 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.5 2006/05/30 14:46:45 bjori Exp $ */ #include "php.h" #include "php_streams.h" @@ -339,8 +339,21 @@ #ifdef EXPERIMENTAL_DATE_SUPPORT date_register_classes(TSRMLS_C); #endif +/* + * RFC4287, Section 3.3: http://www.ietf.org/rfc/rfc4287.txt + * A Date construct is an element whose content MUST conform to the + * "date-time" production in [RFC3339]. In addition, an uppercase "T" + * character MUST be used to separate date and time, and an uppercase + * "Z" character MUST be present in the absence of a numeric time zone offset. + */ REGISTER_STRING_CONSTANT("DATE_ATOM",DATE_FORMAT_RFC3339, CONST_CS | CONST_PERSISTENT); - REGISTER_STRING_CONSTANT("DATE_COOKIE", DATE_FORMAT_RFC1123, CONST_CS | CONST_PERSISTENT); +/* + * Preliminary specification: http://wp.netscape.com/newsref/std/cookie_spec.html + * "This is based on RFC 822, RFC 850, RFC 1036, and RFC 1123, + * with the variations that the only legal time zone is GMT + * and the separators between the elements of the date must be dashes." + */ + REGISTER_STRING_CONSTANT("DATE_COOKIE", DATE_FORMAT_RFC850, CONST_CS | CONST_PERSISTENT); REGISTER_STRING_CONSTANT("DATE_ISO8601", DATE_FORMAT_ISO8601, CONST_CS | CONST_PERSISTENT); REGISTER_STRING_CONSTANT("DATE_RFC822", DATE_FORMAT_RFC822, CONST_CS | CONST_PERSISTENT); REGISTER_STRING_CONSTANT("DATE_RFC850", DATE_FORMAT_RFC850, CONST_CS | CONST_PERSISTENT); @@ -348,7 +361,11 @@ REGISTER_STRING_CONSTANT("DATE_RFC1123", DATE_FORMAT_RFC1123, CONST_CS | CONST_PERSISTENT); REGISTER_STRING_CONSTANT("DATE_RFC2822", DATE_FORMAT_RFC2822, CONST_CS | CONST_PERSISTENT); REGISTER_STRING_CONSTANT("DATE_RFC3339", DATE_FORMAT_RFC3339, CONST_CS | CONST_PERSISTENT); - REGISTER_STRING_CONSTANT("DATE_RSS", DATE_FORMAT_RFC1123, CONST_CS | CONST_PERSISTENT); +/* + * RSS 2.0 Specification: http://blogs.law.harvard.edu/tech/rss + * "All date-times in RSS conform to the Date and Time Specification of RFC 822" + */ + REGISTER_STRING_CONSTANT("DATE_RSS", DATE_FORMAT_RFC822, CONST_CS | CONST_PERSISTENT); REGISTER_STRING_CONSTANT("DATE_W3C", DATE_FORMAT_RFC3339, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("SUNFUNCS_RET_TIMESTAMP", SUNFUNCS_RET_TIMESTAMP, CONST_CS | CONST_PERSISTENT); @@ -1285,7 +1302,7 @@ zend_declare_class_constant_stringl(date_ce_date, const_name, sizeof(const_name)-1, value, sizeof(value)-1 TSRMLS_CC); REGISTER_DATE_CLASS_CONST_STRING("ATOM",DATE_FORMAT_RFC3339); - REGISTER_DATE_CLASS_CONST_STRING("COOKIE", DATE_FORMAT_RFC1123); + REGISTER_DATE_CLASS_CONST_STRING("COOKIE", DATE_FORMAT_RFC850); REGISTER_DATE_CLASS_CONST_STRING("ISO8601", DATE_FORMAT_ISO8601); REGISTER_DATE_CLASS_CONST_STRING("RFC822", DATE_FORMAT_RFC822); REGISTER_DATE_CLASS_CONST_STRING("RFC850", DATE_FORMAT_RFC850); @@ -1293,7 +1310,7 @@ REGISTER_DATE_CLASS_CONST_STRING("RFC1123", DATE_FORMAT_RFC1123); REGISTER_DATE_CLASS_CONST_STRING("RFC2822", DATE_FORMAT_RFC2822); REGISTER_DATE_CLASS_CONST_STRING("RFC3339", DATE_FORMAT_RFC3339); - REGISTER_DATE_CLASS_CONST_STRING("RSS", DATE_FORMAT_RFC1123); + REGISTER_DATE_CLASS_CONST_STRING("RSS", DATE_FORMAT_RFC822); REGISTER_DATE_CLASS_CONST_STRING("W3C", DATE_FORMAT_RFC3339); http://cvs.php.net/viewcvs.cgi/php-src/ext/date/tests/date_constants.phpt?r1=1.1.2.3&r2=1.1.2.4&diff_format=u Index: php-src/ext/date/tests/date_constants.phpt diff -u php-src/ext/date/tests/date_constants.phpt:1.1.2.3 php-src/ext/date/tests/date_constants.phpt:1.1.2.4 --- php-src/ext/date/tests/date_constants.phpt:1.1.2.3 Tue May 30 13:14:51 2006 +++ php-src/ext/date/tests/date_constants.phpt Tue May 30 14:46:46 2006 @@ -24,8 +24,8 @@ --EXPECT-- string(25) "2006-07-01T14:27:30+02:00" string(25) "2006-05-30T14:32:13+02:00" -string(31) "Sat, 01 Jul 2006 14:27:30 +0200" -string(31) "Tue, 30 May 2006 14:32:13 +0200" +string(33) "Saturday, 01-Jul-06 14:27:30 CEST" +string(32) "Tuesday, 30-May-06 14:32:13 CEST" string(24) "2006-07-01T14:27:30+0200" strin
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
rasmus Thu May 11 03:47:55 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: This spelling mistake finally annoyed me enough to fix it. http://cvs.php.net/viewcvs.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45.2.1&r2=1.43.2.45.2.2&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45.2.1 php-src/ext/date/php_date.c:1.43.2.45.2.2 --- php-src/ext/date/php_date.c:1.43.2.45.2.1 Tue May 9 23:55:11 2006 +++ php-src/ext/date/php_date.c Thu May 11 03:47:55 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45.2.1 2006/05/09 23:55:11 helly Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.2 2006/05/11 03:47:55 rasmus Exp $ */ #include "php.h" #include "php_streams.h" @@ -1288,7 +1288,7 @@ } /* Advanced Interface */ -static zval * date_instanciate(zend_class_entry *pce, zval *object TSRMLS_DC) +static zval * date_instantiate(zend_class_entry *pce, zval *object TSRMLS_DC) { if (!object) { ALLOC_ZVAL(object); @@ -1314,7 +1314,7 @@ RETURN_FALSE; } - date_instanciate(date_ce_date, return_value TSRMLS_CC); + date_instantiate(date_ce_date, return_value TSRMLS_CC); dateobj = (php_date_obj *) zend_object_store_get_object(return_value TSRMLS_CC); dateobj->time = timelib_strtotime(time_str_len ? time_str : "now", time_str_len ? time_str_len : sizeof("now") -1, NULL, DATE_TIMEZONEDB); @@ -1498,7 +1498,7 @@ } dateobj = (php_date_obj *) zend_object_store_get_object(object TSRMLS_CC); if (dateobj->time->is_localtime && dateobj->time->tz_info) { - date_instanciate(date_ce_timezone, return_value TSRMLS_CC); + date_instantiate(date_ce_timezone, return_value TSRMLS_CC); tzobj = (php_timezone_obj *) zend_object_store_get_object(return_value TSRMLS_CC); tzobj->tz = timelib_tzinfo_clone(dateobj->time->tz_info); } else { @@ -1622,7 +1622,7 @@ } /* If we find it we instantiate the object otherwise, well, we don't and return false */ if (tzi) { - date_instanciate(date_ce_timezone, return_value TSRMLS_CC); + date_instantiate(date_ce_timezone, return_value TSRMLS_CC); tzobj = (php_timezone_obj *) zend_object_store_get_object(return_value TSRMLS_CC); tzobj->tz = tzi; } else { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/date php_date.c
helly Tue May 9 23:55:11 2006 UTC Modified files: (Branch: PHP_5_2) /php-src/ext/date php_date.c Log: - Update after api changes http://cvs.php.net/viewcvs.cgi/php-src/ext/date/php_date.c?r1=1.43.2.45&r2=1.43.2.45.2.1&diff_format=u Index: php-src/ext/date/php_date.c diff -u php-src/ext/date/php_date.c:1.43.2.45 php-src/ext/date/php_date.c:1.43.2.45.2.1 --- php-src/ext/date/php_date.c:1.43.2.45 Tue Apr 11 18:03:46 2006 +++ php-src/ext/date/php_date.c Tue May 9 23:55:11 2006 @@ -16,7 +16,7 @@ +--+ */ -/* $Id: php_date.c,v 1.43.2.45 2006/04/11 18:03:46 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.1 2006/05/09 23:55:11 helly Exp $ */ #include "php.h" #include "php_streams.h" @@ -99,8 +99,8 @@ ZEND_NAMED_FE(getName, ZEND_FN(timezone_name_get), NULL) ZEND_NAMED_FE(getOffset, ZEND_FN(timezone_offset_get), NULL) ZEND_NAMED_FE(getTransistions, ZEND_FN(timezone_transistions_get), NULL) - ZEND_MALIAS(timezone, listAbbreviations, abbreviations_list, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) - ZEND_MALIAS(timezone, listIdentifiers, identifiers_list, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) + ZEND_ME_MAPPING(listAbbreviations, timezone_abbreviations_list, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) + ZEND_ME_MAPPING(listIdentifiers, timezone_identifiers_list, NULL, ZEND_ACC_PUBLIC|ZEND_ACC_STATIC) {NULL, NULL, NULL} }; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php