diff options
author | Derick Rethans <derick@php.net> | 2008-07-23 19:53:39 +0000 |
---|---|---|
committer | Derick Rethans <derick@php.net> | 2008-07-23 19:53:39 +0000 |
commit | 07c9bd8382cb4af513e5ba521dfbbb40da340197 (patch) | |
tree | ac0b8b1baf9c93edabf9bf7ca98de50d5398ac9e /ext/date/lib/parse_date.re | |
parent | d1cc28ca317df858a66aef3b5d2dc2ebb265a997 (diff) | |
download | php-git-07c9bd8382cb4af513e5ba521dfbbb40da340197.tar.gz |
- MFH: Fixed an issue with "first <weekday> of" in case the first <weekday> was
the same day-of-week as the first day of the month.
Diffstat (limited to 'ext/date/lib/parse_date.re')
-rw-r--r-- | ext/date/lib/parse_date.re | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/ext/date/lib/parse_date.re b/ext/date/lib/parse_date.re index d8ca59146a..8b48a80a0e 100644 --- a/ext/date/lib/parse_date.re +++ b/ext/date/lib/parse_date.re @@ -957,7 +957,7 @@ relative = relnumber space? (reltextunit | 'week' ); relativetext = (reltextnumber|reltexttext) space reltextunit; relativetextweek = reltexttext space 'week'; -weekdayof = (reltextnumber|reltexttext) space (dayfull|dayabbr) ' of'; +weekdayof = (reltextnumber|reltexttext) space (dayfull|dayabbr) space 'of'; */ @@ -1071,13 +1071,12 @@ weekdayof = (reltextnumber|reltexttext) space (dayfull|dayabbr) ' of'; i = timelib_get_relative_text((char **) &ptr, &behavior); timelib_eat_spaces((char **) &ptr); - timelib_set_relative((char **) &ptr, i, behavior, s); if (i > 0) { /* first, second... etc */ s->time->relative.special.type = TIMELIB_SPECIAL_DAY_OF_WEEK_IN_MONTH; - timelib_set_relative((char **) &ptr, i, behavior, s); + timelib_set_relative((char **) &ptr, i, 1, s); } else { /* last */ s->time->relative.special.type = TIMELIB_SPECIAL_LAST_DAY_OF_WEEK_IN_MONTH; - timelib_set_relative((char **) &ptr, -i, behavior, s); + timelib_set_relative((char **) &ptr, i, behavior, s); } TIMELIB_DEINIT; return TIMELIB_WEEK_DAY_OF_MONTH; |