Skip to content

Commit a8dc4f0

Browse files
committed
Fix DateInterval->days value
when object was created not from DateTime::diff()
1 parent 626effc commit a8dc4f0

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

ext/date/php_date.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3470,7 +3470,11 @@ zval *date_interval_read_property(zval *object, zval *member, int type, const ze
34703470
ALLOC_INIT_ZVAL(retval);
34713471
Z_SET_REFCOUNT_P(retval, 0);
34723472

3473-
ZVAL_LONG(retval, value);
3473+
if (value != -99999) {
3474+
ZVAL_LONG(retval, value);
3475+
} else {
3476+
ZVAL_FALSE(retval);
3477+
}
34743478

34753479
if (member == &tmp_member) {
34763480
zval_dtor(member);
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
--TEST--
2+
Wrong var_dump(DateInterval->days) value
3+
--FILE--
4+
<?php
5+
6+
$interval = new DateInterval('P2Y4DT6H8M');;
7+
8+
var_dump($interval->days);
9+
--EXPECT--
10+
bool(false)

0 commit comments

Comments
 (0)