diff options
author | Honglei Zhang <honglei.zhang@nokia.com> | 2011-08-19 08:22:38 (GMT) |
---|---|---|
committer | Honglei Zhang <honglei.zhang@nokia.com> | 2011-08-24 10:23:55 (GMT) |
commit | e8b49d0e33ea6c8a2814fcad70015dbcc28e9a5d (patch) | |
tree | 3297440a8bf574560aa5deb71c1b11e0cad0802a /tests/auto | |
parent | 89260bad8fddcbbfe54b3c5238ef370a620ab9e6 (diff) | |
download | Qt-e8b49d0e33ea6c8a2814fcad70015dbcc28e9a5d.zip Qt-e8b49d0e33ea6c8a2814fcad70015dbcc28e9a5d.tar.gz Qt-e8b49d0e33ea6c8a2814fcad70015dbcc28e9a5d.tar.bz2 |
QXmlSimpleReader handle external entity reference file over 1k
This commit fixes the bug that causes the QXmlSimpleReader can only handle
external reference file less than 1k. Instead of reading the 1k buffer,
the system will try to read all data from file into memory. This is not
good for memory management. But there doesn't seem to be better solution
without breaking the existing API.
Task-number: QTBUG-21025
Reviewed-by: Peter Hartmann
Diffstat (limited to 'tests/auto')
-rwxr-xr-x | tests/auto/qxmlsimplereader/xmldocs/valid/ext-sa/015.ent | bin | 0 -> 2130 bytes | |||
-rw-r--r-- | tests/auto/qxmlsimplereader/xmldocs/valid/ext-sa/015.xml | 6 | ||||
-rw-r--r-- | tests/auto/qxmlsimplereader/xmldocs/valid/ext-sa/015.xml.ref | 10 |
3 files changed, 16 insertions, 0 deletions
diff --git a/tests/auto/qxmlsimplereader/xmldocs/valid/ext-sa/015.ent b/tests/auto/qxmlsimplereader/xmldocs/valid/ext-sa/015.ent Binary files differnew file mode 100755 index 0000000..86a8679 --- /dev/null +++ b/tests/auto/qxmlsimplereader/xmldocs/valid/ext-sa/015.ent diff --git a/tests/auto/qxmlsimplereader/xmldocs/valid/ext-sa/015.xml b/tests/auto/qxmlsimplereader/xmldocs/valid/ext-sa/015.xml new file mode 100644 index 0000000..5550dab --- /dev/null +++ b/tests/auto/qxmlsimplereader/xmldocs/valid/ext-sa/015.xml @@ -0,0 +1,6 @@ +<!DOCTYPE doc [
+<!ELEMENT doc k(#PCDATA)>
+<!ENTITY e SYSTEM "015.ent">
+]>
+<doc>&e;</doc>
+
diff --git a/tests/auto/qxmlsimplereader/xmldocs/valid/ext-sa/015.xml.ref b/tests/auto/qxmlsimplereader/xmldocs/valid/ext-sa/015.xml.ref new file mode 100644 index 0000000..1ec309a --- /dev/null +++ b/tests/auto/qxmlsimplereader/xmldocs/valid/ext-sa/015.xml.ref @@ -0,0 +1,10 @@ +setDocumentLocator(locator={columnNumber=1, lineNumber=1}) +startDocument() + startDTD(name="doc", publicId="", systemId="") + externalEntityDecl(name="e", publicId="", systemId="015.ent") + endDTD() + startElement(namespaceURI="", localName="doc", qName="doc", atts=[]) + resolveEntity(publicId="", systemId="015.ent", ret={}) + skippedEntity(name="e") + endElement(namespaceURI="", localName="doc", qName="doc") +endDocument() |