Skip to content

Commit 494615f

Browse files
committed
Fix leak in DateTimeImmutable::modify()
1 parent 6ccd675 commit 494615f

File tree

2 files changed

+13
-0
lines changed

2 files changed

+13
-0
lines changed

ext/date/php_date.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3297,6 +3297,7 @@ PHP_METHOD(DateTimeImmutable, modify)
32973297

32983298
date_clone_immutable(object, &new_object);
32993299
if (!php_date_modify(&new_object, modify, modify_len)) {
3300+
zval_ptr_dtor(&new_object);
33003301
RETURN_FALSE;
33013302
}
33023303

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
--TEST--
2+
DateTimeImmutable::modify() with invalid format
3+
--FILE--
4+
<?php
5+
6+
$datetime = new DateTimeImmutable;
7+
var_dump($datetime->modify(''));
8+
9+
?>
10+
--EXPECTF--
11+
Warning: DateTimeImmutable::modify(): Failed to parse time string () at position 0 ( in %s on line %d
12+
bool(false)

0 commit comments

Comments
 (0)