Skip to content

Commit

Permalink
Merge branch hotfix/v8.2.2 into master
Browse files Browse the repository at this point in the history
  • Loading branch information
papacarlo committed Nov 28, 2024
2 parents 6b21323 + 182cd8d commit 87b5ae8
Show file tree
Hide file tree
Showing 6 changed files with 230 additions and 162 deletions.
3 changes: 2 additions & 1 deletion DesktopEditor/graphics/BooleanOperations.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,7 @@ double Curve::GetTimeOf(const PointD& point) const noexcept
if (getDistance(point, GetPoint(u)) <= GEOMETRIC_EPSILON)
return u;
}
roots.clear();
}
}
bool firstDist = d0 <= GEOMETRIC_EPSILON,
Expand Down Expand Up @@ -995,7 +996,7 @@ void CBooleanOperations::TracePaths()
start = true;
while (valid)
{
if (!start || (Op == Intersection && s.Inters))
if (!start || (Op == Intersection && s.Inters && !GetNextSegment(s).Inters))
SetVisited(s);

if (start)
Expand Down
5 changes: 5 additions & 0 deletions DesktopEditor/graphics/pro/js/wasm/js/drawingfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,11 @@ CFile.prototype["loadFromDataWithPassword"] = function(password)
return error;
};

CFile.prototype["getType"] = function()
{
return this.type;
};

CFile.prototype["close"] = function()
{
this._closeFile();
Expand Down
52 changes: 50 additions & 2 deletions OOXML/Binary/Document/BinReader/Readers.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4979,6 +4979,18 @@ int Binary_DocumentTableReader::ReadDocumentContent(BYTE type, long length, void
m_oFileWriter.m_pDrawingConverter->WriteRels(OOX::FileTypes::JsaProject.RelationType(), sJsaProject.GetPath(), L"", &lId);
m_oFileWriter.m_pDrawingConverter->m_pImageManager->m_pContentTypes->AddDefault(sJsaProject.GetExtention(false));
}
else if (c_oSerParType::PermStart == type)
{
OOX::Logic::CPermStart oPerm;
READ1_DEF(length, res, this->ReadPermStart, &oPerm);
m_oDocumentWriter.m_oContent.WriteString(oPerm.toXML());
}
else if (c_oSerParType::PermEnd == type)
{
OOX::Logic::CPermEnd oPerm;
READ1_DEF(length, res, this->ReadPermEnd, &oPerm);
m_oDocumentWriter.m_oContent.WriteString(oPerm.toXML());
}
else
res = c_oSerConstants::ReadUnknown;
return res;
Expand Down Expand Up @@ -5755,8 +5767,8 @@ int Binary_DocumentTableReader::ReadPermStart(BYTE type, long length, void* poRe
}
else if (c_oSerPermission::Ed == type)
{
pPerm->m_sId.Init();
*pPerm->m_sId = m_oBufferedStream.GetString3(length);
pPerm->m_sEd.Init();
*pPerm->m_sEd = m_oBufferedStream.GetString3(length);
}
else if (c_oSerPermission::EdGroup == type)
{
Expand Down Expand Up @@ -6034,6 +6046,18 @@ int Binary_DocumentTableReader::ReadMathArg(BYTE type, long length, void* poResu
READ1_DEF(length, res, this->ReadMoveToRangeEnd, &oMoveToRangeEnd);
GetRunStringWriter().WriteString(oMoveToRangeEnd.toXML());
}
else if (c_oSer_OMathContentType::PermStart == type)
{
OOX::Logic::CPermStart oPerm;
READ1_DEF(length, res, this->ReadPermStart, &oPerm);
GetRunStringWriter().WriteString(oPerm.toXML());
}
else if (c_oSer_OMathContentType::PermEnd == type)
{
OOX::Logic::CPermEnd oPerm;
READ1_DEF(length, res, this->ReadPermEnd, &oPerm);
GetRunStringWriter().WriteString(oPerm.toXML());
}
else
res = c_oSerConstants::ReadUnknown;
return res;
Expand Down Expand Up @@ -8653,6 +8677,18 @@ int Binary_DocumentTableReader::Read_TableContent(BYTE type, long length, void*
READ1_DEF(length, res, this->ReadMoveToRangeEnd, &oMoveToRangeEnd);
pCStringWriter->WriteString(oMoveToRangeEnd.toXML());
}
else if (c_oSerDocTableType::PermStart == type)
{
OOX::Logic::CPermStart oPerm;
READ1_DEF(length, res, this->ReadPermStart, &oPerm);
pCStringWriter->WriteString(oPerm.toXML());
}
else if (c_oSerDocTableType::PermEnd == type)
{
OOX::Logic::CPermEnd oPerm;
READ1_DEF(length, res, this->ReadPermEnd, &oPerm);
pCStringWriter->WriteString(oPerm.toXML());
}
else
res = c_oSerConstants::ReadUnknown;
return res;
Expand Down Expand Up @@ -8726,6 +8762,18 @@ int Binary_DocumentTableReader::ReadRowContent(BYTE type, long length, void* poR
READ1_DEF(length, res, this->ReadMoveToRangeEnd, &oMoveToRangeEnd);
pCStringWriter->WriteString(oMoveToRangeEnd.toXML());
}
else if (c_oSerDocTableType::PermStart == type)
{
OOX::Logic::CPermStart oPerm;
READ1_DEF(length, res, this->ReadPermStart, &oPerm);
pCStringWriter->WriteString(oPerm.toXML());
}
else if (c_oSerDocTableType::PermEnd == type)
{
OOX::Logic::CPermEnd oPerm;
READ1_DEF(length, res, this->ReadPermEnd, &oPerm);
pCStringWriter->WriteString(oPerm.toXML());
}
else
res = c_oSerConstants::ReadUnknown;
return res;
Expand Down
8 changes: 6 additions & 2 deletions OOXML/Binary/Document/BinWriter/BinReaderWriterDefines.h
Original file line number Diff line number Diff line change
Expand Up @@ -572,7 +572,9 @@ extern int g_nCurFormatVersion;
MoveFromRangeStart = 14,
MoveFromRangeEnd = 15,
MoveToRangeStart = 16,
MoveToRangeEnd = 17
MoveToRangeEnd = 17,
PermStart = 18,
PermEnd = 19
};}
namespace c_oSerRunType{enum c_oSerRunType
{
Expand Down Expand Up @@ -1075,7 +1077,9 @@ extern int g_nCurFormatVersion;
NoBreakHyphen = 81,
SoftHyphen = 82,
Sym = 83,
Tab = 84
Tab = 84,
PermStart =85,
PermEnd = 86
};}
namespace c_oSer_FramePrType{ enum c_oSer_FramePrType
{
Expand Down
Loading

0 comments on commit 87b5ae8

Please sign in to comment.