From f26de54016d249fadb99e57487fc721f792c65a9 Mon Sep 17 00:00:00 2001 From: Kulikova Svetlana Date: Wed, 9 Jun 2021 18:00:28 +0300 Subject: [PATCH] Fix bug 50799 --- Fb2File/Fb2File.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Fb2File/Fb2File.cpp b/Fb2File/Fb2File.cpp index 03ec434da8..f915bd736a 100644 --- a/Fb2File/Fb2File.cpp +++ b/Fb2File/Fb2File.cpp @@ -1589,7 +1589,7 @@ HRESULT CFb2File::Open(const std::wstring& sPath, const std::wstring& sDirectory return S_OK; } -void readLi(NSStringUtils::CStringBuilder& oXml, XmlUtils::CXmlLiteReader& oIndexHtml, std::vector& arrBinary, bool bUl, bool bWasTable); +void readLi(NSStringUtils::CStringBuilder& oXml, XmlUtils::CXmlLiteReader& oIndexHtml, std::vector& arrBinary, bool bUl, bool bWasP, bool bWasTable); void readStream(NSStringUtils::CStringBuilder& oXml, XmlUtils::CXmlLiteReader& oIndexHtml, std::vector& arrBinary, bool bWasP, bool bWasTable) { int nDeath = oIndexHtml.GetDepth(); @@ -1760,9 +1760,9 @@ void readStream(NSStringUtils::CStringBuilder& oXml, XmlUtils::CXmlLiteReader& o oXml.WriteString(L""); } else if (sName == L"ul") - readLi(oXml, oIndexHtml, arrBinary, true, bWasTable); + readLi(oXml, oIndexHtml, arrBinary, true, bWasP, bWasTable); else if (sName == L"ol") - readLi(oXml, oIndexHtml, arrBinary, false, bWasTable); + readLi(oXml, oIndexHtml, arrBinary, false, bWasP, bWasTable); else if (sName == L"img") { std::wstring sBinary; @@ -1823,7 +1823,7 @@ std::wstring ToLowerRoman(int number) return L""; } -void readLi(NSStringUtils::CStringBuilder& oXml, XmlUtils::CXmlLiteReader& oIndexHtml, std::vector& arrBinary, bool bUl, bool bWasTable) +void readLi(NSStringUtils::CStringBuilder& oXml, XmlUtils::CXmlLiteReader& oIndexHtml, std::vector& arrBinary, bool bUl, bool bWasP, bool bWasTable) { int nNum = 1; while (oIndexHtml.MoveToNextAttribute()) @@ -1837,7 +1837,8 @@ void readLi(NSStringUtils::CStringBuilder& oXml, XmlUtils::CXmlLiteReader& oInde { if (oIndexHtml.GetName() == L"li") { - oXml.WriteString(L"

"); + if (!bWasP) + oXml.WriteString(L"

"); if (bUl) oXml.AddCharSafe(183); else @@ -1875,7 +1876,8 @@ void readLi(NSStringUtils::CStringBuilder& oXml, XmlUtils::CXmlLiteReader& oInde } oXml.WriteString(L" "); readStream(oXml, oIndexHtml, arrBinary, true, bWasTable); - oXml.WriteString(L"

"); + if (!bWasP) + oXml.WriteString(L"

"); } } while (oIndexHtml.ReadNextSiblingNode2(nDeath)); }