ID: 48202
Updated by: [email protected]
Reported By: koenk82 at gmail dot com
Status: Assigned
Bug Type: XML Writer
Operating System: *
PHP Version: 5.*, 6CVS (2009-05-09)
-Assigned To: pajoye
+Assigned To: rrichards
New Comment:
Rob, can you take a look please?
Maybe change the error in xmlNewTextWriterFilename from:
out = xmlOutputBufferCreateFilename(uri, NULL, compression);
if (out == NULL) {
xmlWriterErrMsg(NULL, XML_ERR_NO_MEMORY,
"xmlNewTextWriterFilename : out of
memory!\n");
return NULL;
}
to
out = xmlOutputBufferCreateFilename(uri, NULL, compression);
if (out == NULL) {
xmlWriterErrMsg(NULL, XML_EIO,
"xmlNewTextWriterFilename : cannot create file
%s\n", uri);
return NULL;
}
Previous Comments:
------------------------------------------------------------------------
[2009-05-30 20:59:38] [email protected]
I found the problem, it is a bug in libxml's xmlwriter. It does not
check correctly the return value from the createfilename callback.
------------------------------------------------------------------------
[2009-05-26 14:12:42] [email protected]
It's reproducible yet.
$ sapi/cli/php -r 'xmlwriter_open_uri("file:///a");'
Warning: xmlwriter_open_uri(/a): failed to open stream: Permission
denied in Command line code on line 1
Warning: xmlwriter_open_uri(): xmlNewTextWriterFilename : out of
memory! in Command line code on line 1
------------------------------------------------------------------------
[2009-05-25 16:53:52] [email protected]
This bug has been fixed in CVS.
Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
Thank you for the report, and for helping us make PHP better.
fixed in 5.2, 5.3 and HEAD
------------------------------------------------------------------------
[2009-05-09 13:04:56] [email protected]
reproduced during the testfest 2009/utrecht, assigning to me.
------------------------------------------------------------------------
[2009-05-09 12:40:13] koenk82 at gmail dot com
Description:
------------
If you supply a non-existing file to xmlwriter_open_uri it produces an
Out of memory error.
Reproduce code:
---------------
<?php
var_dump(xmlwriter_open_uri('foo/bar.tmp'));
?>
Expected result:
----------------
Warning: xmlwriter_open_uri(%s): failed to open stream: No such file or
directory in %s on line %d
bool(false)
Actual result:
--------------
Warning: xmlwriter_open_uri(/home/koen/Bureaublad/php5/foo/bar.tmp):
failed to open stream: No such file or directory in
/home/koen/Bureaublad/mytests/xmlwriter_open_uri_error_003.php on line
2
Warning: xmlwriter_open_uri(): xmlNewTextWriterFilename : out of
memory! in
/home/koen/Bureaublad/mytests/xmlwriter_open_uri_error_003.php on line
2
bool(false)
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=48202&edit=1