From 934bddcfa682778168c24fd78c8868353d9d6e35 Mon Sep 17 00:00:00 2001 From: Arseny Kapoulkine Date: Sun, 23 Feb 2014 19:28:27 +0000 Subject: Fix gap collapsing during PCDATA parsing for fragment mode. git-svn-id: https://pugixml.googlecode.com/svn/trunk@985 99668b35-9821-0410-8761-19e4c4f06640 --- src/pugixml.cpp | 2 ++ tests/test_parse.cpp | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/src/pugixml.cpp b/src/pugixml.cpp index 59712ae..634192a 100644 --- a/src/pugixml.cpp +++ b/src/pugixml.cpp @@ -1903,6 +1903,8 @@ PUGI__NS_BEGIN } else if (*s == 0) { + *g.flush(s) = 0; + return s; } else ++s; diff --git a/tests/test_parse.cpp b/tests/test_parse.cpp index 6d9d4cc..eb8fefb 100644 --- a/tests/test_parse.cpp +++ b/tests/test_parse.cpp @@ -975,3 +975,10 @@ TEST(parse_bom_fragment_invalid_utf32) CHECK_STRING(value, "\xef\xbf\xbf"); #endif } + +TEST(parse_pcdata_gap_fragment) +{ + xml_document doc; + CHECK(doc.load(STR("a&b"), parse_fragment | parse_escapes)); + CHECK_STRING(doc.text().get(), STR("a&b")); +} \ No newline at end of file -- cgit v1.2.3