diff --git a/MsBinaryFile/Common/Vml/PPTShape/Ppt2PptxShapeConverter.cpp b/MsBinaryFile/Common/Vml/PPTShape/Ppt2PptxShapeConverter.cpp
index 65009c2fee..bff35d9453 100644
--- a/MsBinaryFile/Common/Vml/PPTShape/Ppt2PptxShapeConverter.cpp
+++ b/MsBinaryFile/Common/Vml/PPTShape/Ppt2PptxShapeConverter.cpp
@@ -635,8 +635,6 @@ namespace NSGuidesVML
m_arIndexDst.push_back(m_lIndexDst);
- // if (true)
- // {
m_oTextRect.WriteString(L"");
- // } else
- // {
- // m_oTextRect.WriteString(L"");
- // }
-
}
void CFormulaConverter::GetValue(const LONG& lParam, const ParamType& eParamType, const bool& bExtShape, NSBinPptxRW::CXmlWriter& oWriter)
{
diff --git a/MsBinaryFile/Common/Vml/PPTShape/PptShape.cpp b/MsBinaryFile/Common/Vml/PPTShape/PptShape.cpp
index 715aad167d..5ea807f79a 100644
--- a/MsBinaryFile/Common/Vml/PPTShape/PptShape.cpp
+++ b/MsBinaryFile/Common/Vml/PPTShape/PptShape.cpp
@@ -76,10 +76,10 @@ CPPTShape::CPPTShape() : CBaseShape(), m_arStringTextRects()
{
m_eType = PPTShapes::sptMin;
- m_arStringTextRects.push_back(L"0,0,21600,21600");
-
+ m_arStringTextRects.clear();
m_strPathLimoX.clear();
m_strPathLimoY.clear();
+
m_bIsShapeType = false;
m_bIsFilled = true;
diff --git a/OOXML/PPTXFormat/DrawingConverter/ASCOfficeDrawingConverter.cpp b/OOXML/PPTXFormat/DrawingConverter/ASCOfficeDrawingConverter.cpp
index 26ae8422e9..324eaaeb72 100644
--- a/OOXML/PPTXFormat/DrawingConverter/ASCOfficeDrawingConverter.cpp
+++ b/OOXML/PPTXFormat/DrawingConverter/ASCOfficeDrawingConverter.cpp
@@ -3657,7 +3657,10 @@ void CDrawingConverter::ConvertGroup(PPTX::Logic::SpTreeElem *result, XmlUtils::
}
}
}
- if (oNode.GetNodes(L"*", oNodes))
+
+ XmlUtils::CXmlNode oNodeBinData;
+
+ if (oNode.GetNodes(L"*", oNodes))
{
int nCount = oNodes.GetCount();
for (int i = 0; i < nCount; ++i)
@@ -3667,7 +3670,7 @@ void CDrawingConverter::ConvertGroup(PPTX::Logic::SpTreeElem *result, XmlUtils::
std::wstring strNameP = XmlUtils::GetNameNoNS(oNodeT.GetName());
- if (L"shape" == strNameP ||
+ if (L"shape" == strNameP ||
L"rect" == strNameP ||
L"oval" == strNameP ||
L"line" == strNameP ||
@@ -3675,17 +3678,16 @@ void CDrawingConverter::ConvertGroup(PPTX::Logic::SpTreeElem *result, XmlUtils::
L"background" == strNameP ||
L"roundrect" == strNameP)
{
- XmlUtils::CXmlNode oNodeBinData;
-
- if (i + 1 < nCount)
+ if (false == oNodeBinData.IsValid() && i + 1 < nCount)
{
oNodes.GetAt(i + 1, oNodeBinData);
if (L"binData" != XmlUtils::GetNameNoNS(oNodeBinData.GetName()))
{
- oNodeBinData.Clear();
+ i++;
}
+ else
+ oNodeBinData.Clear();
}
-
PPTX::Logic::SpTreeElem _el;
if (oNodeBinData.IsValid())
{
@@ -3697,7 +3699,11 @@ void CDrawingConverter::ConvertGroup(PPTX::Logic::SpTreeElem *result, XmlUtils::
if (_el.is_init())
pTree->SpTreeElems.push_back(_el);
}
- else if (L"group" == strNameP)
+ else if (L"binData" == strNameP)
+ {
+ oNodeBinData = oNodeT;
+ }
+ else if (L"group" == strNameP)
{
PPTX::Logic::SpTreeElem _el;
ConvertGroup(&_el, oNodeT, pMainProps, false);
diff --git a/OOXML/Projects/Windows/DocxFormatLib/DocxFormatLib.vcxproj b/OOXML/Projects/Windows/DocxFormatLib/DocxFormatLib.vcxproj
index b720d121f9..c88319b691 100644
--- a/OOXML/Projects/Windows/DocxFormatLib/DocxFormatLib.vcxproj
+++ b/OOXML/Projects/Windows/DocxFormatLib/DocxFormatLib.vcxproj
@@ -556,9 +556,6 @@
-
-
-
diff --git a/OOXML/Projects/Windows/DocxFormatLib/DocxFormatLib.vcxproj.filters b/OOXML/Projects/Windows/DocxFormatLib/DocxFormatLib.vcxproj.filters
index 49f9b8ae21..bd2e8a8960 100644
--- a/OOXML/Projects/Windows/DocxFormatLib/DocxFormatLib.vcxproj.filters
+++ b/OOXML/Projects/Windows/DocxFormatLib/DocxFormatLib.vcxproj.filters
@@ -942,7 +942,4 @@
External
-
-
-
\ No newline at end of file