From 98dfe303caba424823c47f39be776c25b201203f Mon Sep 17 00:00:00 2001 From: "Elena.Subbotina" Date: Mon, 18 Dec 2023 22:06:35 +0300 Subject: [PATCH] fix bug #65483 --- MsBinaryFile/DocFile/BorderCode.cpp | 3 ++- MsBinaryFile/DocFile/BorderCode.h | 2 +- OOXML/Common/SimpleTypes_Word.cpp | 6 ++++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/MsBinaryFile/DocFile/BorderCode.cpp b/MsBinaryFile/DocFile/BorderCode.cpp index 76cfbe1445..891189702a 100644 --- a/MsBinaryFile/DocFile/BorderCode.cpp +++ b/MsBinaryFile/DocFile/BorderCode.cpp @@ -50,7 +50,8 @@ namespace DocFileFormat { //it's a border code of Word 2000/2003 cv = FormatUtils::BytesToInt32( bytes, 0, size ); - + cv = cv & 0x00ffffff; + ico = std::wstring( Global::ColorIdentifier[0] ); dptLineWidth = bytes[4]; diff --git a/MsBinaryFile/DocFile/BorderCode.h b/MsBinaryFile/DocFile/BorderCode.h index 5bc1849ac5..813d43e5a3 100644 --- a/MsBinaryFile/DocFile/BorderCode.h +++ b/MsBinaryFile/DocFile/BorderCode.h @@ -73,7 +73,7 @@ namespace DocFileFormat friend class VMLPictureMapping; private: - int cv; + _UINT32 cv; unsigned char dptLineWidth; unsigned char brcType; std::wstring ico; diff --git a/OOXML/Common/SimpleTypes_Word.cpp b/OOXML/Common/SimpleTypes_Word.cpp index 6185434ead..334169dd67 100644 --- a/OOXML/Common/SimpleTypes_Word.cpp +++ b/OOXML/Common/SimpleTypes_Word.cpp @@ -1820,6 +1820,12 @@ namespace SimpleTypes m_unG = oPresetColorVal.Get_G(); m_unB = oPresetColorVal.Get_B(); } + else if (8 <= sValue.length()) + { + this->m_eValue = hexcolorRGB; + m_sValue = sValue.substr(2, 6); + Parse(); + } else if ( 6 <= sValue.length() ) { this->m_eValue = hexcolorRGB;