summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/xmlwriter/php_xmlwriter.c2
-rw-r--r--ext/xmlwriter/tests/OO_006.phpt28
2 files changed, 29 insertions, 1 deletions
diff --git a/ext/xmlwriter/php_xmlwriter.c b/ext/xmlwriter/php_xmlwriter.c
index 4dc926ae85..f44a6b26fb 100644
--- a/ext/xmlwriter/php_xmlwriter.c
+++ b/ext/xmlwriter/php_xmlwriter.c
@@ -823,7 +823,7 @@ PHP_FUNCTION(xmlwriter_write_element_ns)
zval *this = getThis();
if (this) {
- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rssss",
+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ssss",
&prefix, &prefix_len, &name, &name_len, &uri, &uri_len, &content, &content_len) == FAILURE) {
return;
}
diff --git a/ext/xmlwriter/tests/OO_006.phpt b/ext/xmlwriter/tests/OO_006.phpt
new file mode 100644
index 0000000000..debaa17b47
--- /dev/null
+++ b/ext/xmlwriter/tests/OO_006.phpt
@@ -0,0 +1,28 @@
+--TEST--
+XMLWriter: libxml2 XML Writer, startDTD/writeElementNS
+--SKIPIF--
+<?php
+if (!extension_loaded("xmlwriter")) die("skip");
+if (!function_exists("xmlwriter_start_comment")) die("skip: libxml2 2.6.7+ required");
+?>
+--FILE--
+<?php
+/* $Id$ */
+
+$doc_dest = '001.xml';
+$xw = new XMLWriter();
+$xw->openUri($doc_dest);
+$xw->startDtd('foo', NULL, 'urn:bar');
+$xw->endDtd();
+$xw->startElement('foo');
+$xw->writeElementNS('foo', 'bar', 'urn:foo', 'dummy content');
+$xw->endElement();
+
+// Force to write and empty the buffer
+$output_bytes = $xw->flush(true);
+echo file_get_contents($doc_dest);
+unset($xw);
+unlink('001.xml');
+?>
+--EXPECT--
+<!DOCTYPE foo SYSTEM "urn:bar"><foo><foo:bar xmlns:foo="urn:foo">dummy content</foo:bar></foo>