summaryrefslogtreecommitdiffstats
path: root/third_party/libxml/xmlIO.c
diff options
context:
space:
mode:
authormaruel@google.com <maruel@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-08-08 19:12:46 +0000
committermaruel@google.com <maruel@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-08-08 19:12:46 +0000
commit505115c27f5454df0878407c7706c7f1c3744b0d (patch)
treedf43feb18444d5be3bf35ed3ee16156d49e17776 /third_party/libxml/xmlIO.c
parente8c2172aa23158985682d232cf290593b8206b90 (diff)
downloadchromium_src-505115c27f5454df0878407c7706c7f1c3744b0d.zip
chromium_src-505115c27f5454df0878407c7706c7f1c3744b0d.tar.gz
chromium_src-505115c27f5454df0878407c7706c7f1c3744b0d.tar.bz2
Updates libxml to 2.6.32. Updated google.patch and README.google
BUG=1300342 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@581 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'third_party/libxml/xmlIO.c')
-rw-r--r--third_party/libxml/xmlIO.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/third_party/libxml/xmlIO.c b/third_party/libxml/xmlIO.c
index 7782776..dd4f7e7 100644
--- a/third_party/libxml/xmlIO.c
+++ b/third_party/libxml/xmlIO.c
@@ -3315,6 +3315,16 @@ xmlOutputBufferWriteEscape(xmlOutputBufferPtr out, const xmlChar *str,
cons = len;
chunk = (out->buffer->size - out->buffer->use) - 1;
+ /*
+ * make sure we have enough room to save first, if this is
+ * not the case force a flush, but make sure we stay in the loop
+ */
+ if (chunk < 40) {
+ nbchars = 0;
+ oldwritten = -1;
+ goto flush;
+ }
+
/*
* first handle encoding stuff.
*/
@@ -3360,6 +3370,7 @@ xmlOutputBufferWriteEscape(xmlOutputBufferPtr out, const xmlChar *str,
if ((nbchars < MINLEN) && (len <= 0))
goto done;
+flush:
if (out->writecallback) {
/*
* second write the stuff to the I/O channel