Merge branch 'PHP-7.4'

* PHP-7.4:
  Revert "Fixed bug #79029 (Use After Free's in XMLReader / XMLWriter)"
This commit is contained in:
Xinchen Hui 2019-12-25 15:28:13 +08:00
commit 66a591aebe
3 changed files with 13 additions and 34 deletions

View File

@ -327,8 +327,6 @@ static void *php_libxml_streams_IO_open_wrapper(const char *filename, const char
context = php_stream_context_from_zval(Z_ISUNDEF(LIBXML(stream_context))? NULL : &LIBXML(stream_context), 0);
ret_val = php_stream_open_wrapper_ex(path_to_open, (char *)mode, REPORT_ERRORS, NULL, context);
/* Prevent from closing this by fclose() */
((php_stream*)ret_val)->flags |= PHP_STREAM_FLAG_NO_FCLOSE;
if (isescaped) {
xmlFree(resolved_path);
}

View File

@ -1,32 +0,0 @@
--TEST--
#79029 (Use After Free's in XMLReader / XMLWriter)
--SKIPIF--
<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
--FILE--
<?php
$x = array( new XMLWriter() );
$x[0]->openUri("bug79029.txt");
$x[0]->startComment();
@unlink("bug79029.txt");
$x = new XMLWriter();
$x->openUri("bug79029.txt");
fclose(@end(get_resources()));
@unlink("bug79029.txt");
file_put_contents("bug79029.txt", "a");
$x = new XMLReader();
$x->open("bug79029.txt");
fclose(@end(get_resources()));
@unlink("bug79029.txt");
?>
okey
--CLEAN--
<?php
@unlink("bug79029.txt");
?>
--EXPECTF--
Warning: fclose(): %d is not a valid stream resource in %sbug79029.php on line %d
Warning: fclose(): %d is not a valid stream resource in %sbug79029.php on line %d
okey

View File

@ -0,0 +1,13 @@
--TEST--
#79029 (Use After Free's in XMLReader / XMLWriter)
--SKIPIF--
<?php if (!extension_loaded("xmlwriter")) print "skip"; ?>
--FILE--
<?php
$x = array( new XMLWriter() );
$x[0]->openUri("a");
$x[0]->startComment();
?>
okey
--EXPECT--
okey