[Libreoffice-commits] libmspub.git: 4 commits - src/lib
David Tardon
dtardon at redhat.com
Thu Dec 28 16:20:21 UTC 2017
src/lib/MSPUBCollector.cpp | 6 +++---
src/lib/libmspub_utils.cpp | 2 +-
src/lib/libmspub_utils.h | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
New commits:
commit 522860ad23e1aa368fe09885e7973fafc4d456e5
Author: David Tardon <dtardon at redhat.com>
Date: Thu Dec 28 17:16:44 2017 +0100
fix copypasta
Regression since commit 860883fa6fa861f808c091a3cecd03aa351d87a8 .
Change-Id: I36d26d8971891150afca060f86e73af953fab840
diff --git a/src/lib/MSPUBCollector.cpp b/src/lib/MSPUBCollector.cpp
index 062b7dd..dafe561 100644
--- a/src/lib/MSPUBCollector.cpp
+++ b/src/lib/MSPUBCollector.cpp
@@ -312,7 +312,7 @@ void MSPUBCollector::setShapeStretchBorderArt(unsigned seqNum)
void MSPUBCollector::setRectCoordProps(Coordinate coord, librevenge::RVNGPropertyList *props) const
{
props->insert("svg:x", coord.getXIn(m_width));
- props->insert("svg:y", coord.getYIn(m_width));
+ props->insert("svg:y", coord.getYIn(m_height));
props->insert("svg:width", coord.getWidthIn());
props->insert("svg:height", coord.getHeightIn());
}
commit 713bf6adc28bf34fa308e3139e8cb2c6bb462ba0
Author: David Tardon <dtardon at redhat.com>
Date: Thu Dec 28 12:31:51 2017 +0100
avoid unnecessary copying
Change-Id: I39c19a1782ab99b64c873f8352833217e0e06f13
diff --git a/src/lib/libmspub_utils.cpp b/src/lib/libmspub_utils.cpp
index ba34cc5..b2e1391 100644
--- a/src/lib/libmspub_utils.cpp
+++ b/src/lib/libmspub_utils.cpp
@@ -380,7 +380,7 @@ unsigned long getLength(librevenge::RVNGInputStream *const input)
#define SURROGATE_VALUE(h,l) (((h) - 0xd800) * 0x400 + (l) - 0xdc00 + 0x10000)
-void appendCharacters(librevenge::RVNGString &text, const std::vector<unsigned char> characters,
+void appendCharacters(librevenge::RVNGString &text, const std::vector<unsigned char> &characters,
const char *encoding)
{
if (characters.empty())
diff --git a/src/lib/libmspub_utils.h b/src/lib/libmspub_utils.h
index dba757e..3d1c712 100644
--- a/src/lib/libmspub_utils.h
+++ b/src/lib/libmspub_utils.h
@@ -75,7 +75,7 @@ void readNBytes(librevenge::RVNGInputStream *input, unsigned long length, std::v
unsigned long getLength(librevenge::RVNGInputStream *input);
-void appendCharacters(librevenge::RVNGString &text, std::vector<unsigned char> characters, const char *encoding);
+void appendCharacters(librevenge::RVNGString &text, const std::vector<unsigned char> &characters, const char *encoding);
bool stillReading(librevenge::RVNGInputStream *input, unsigned long until);
commit 5409761baa20c34286620adcf23d2388ea40cc93
Author: David Tardon <dtardon at redhat.com>
Date: Thu Dec 28 11:11:58 2017 +0100
tdf#89393 handle multiple paragraphs in cell correctly
Change-Id: If621c41aaa624ed1a61e8e659a2326efb66a2eba
diff --git a/src/lib/MSPUBCollector.cpp b/src/lib/MSPUBCollector.cpp
index d40070d..062b7dd 100644
--- a/src/lib/MSPUBCollector.cpp
+++ b/src/lib/MSPUBCollector.cpp
@@ -222,13 +222,16 @@ void mapTableTextToCells(
assert(paraTexts.back().size() <= text[para].spans.size());
- if (offset > tableCellTextEnds[paraToCellMap.size()])
+ if (offset >= tableCellTextEnds[paraToCellMap.size()])
{
- MSPUB_DEBUG_MSG(("text of cell %u ends in the middle of a paragraph!\n", unsigned(paraToCellMap.size())));
- }
+ if (offset > tableCellTextEnds[paraToCellMap.size()])
+ {
+ MSPUB_DEBUG_MSG(("text of cell %u ends in the middle of a paragraph!\n", unsigned(paraToCellMap.size())));
+ }
- paraToCellMap.push_back(std::make_pair(firstPara, para));
- firstPara = para + 1;
+ paraToCellMap.push_back(std::make_pair(firstPara, para));
+ firstPara = para + 1;
+ }
}
assert(paraTexts.size() == text.size());
commit 1964f1b56f26b902a54f3b499f44a9c5dadfc808
Author: David Tardon <dtardon at redhat.com>
Date: Wed Dec 27 21:21:54 2017 +0100
stop after processing all cells
Change-Id: Ic0df0ed2d6773d4be74aca3d7b6b64664fe8d73e
diff --git a/src/lib/MSPUBCollector.cpp b/src/lib/MSPUBCollector.cpp
index 1ccd15e..d40070d 100644
--- a/src/lib/MSPUBCollector.cpp
+++ b/src/lib/MSPUBCollector.cpp
@@ -204,7 +204,7 @@ void mapTableTextToCells(
unsigned firstPara = 0;
unsigned offset = 1;
- for (unsigned para = 0; para != text.size(); ++para)
+ for (unsigned para = 0; para != text.size() && paraToCellMap.size() < tableCellTextEnds.size(); ++para)
{
paraTexts.push_back(SpanTexts_t());
paraTexts.back().reserve(text[para].spans.size());
@@ -222,16 +222,13 @@ void mapTableTextToCells(
assert(paraTexts.back().size() <= text[para].spans.size());
- if ((paraToCellMap.size() < tableCellTextEnds.size()))
+ if (offset > tableCellTextEnds[paraToCellMap.size()])
{
- if (offset > tableCellTextEnds[paraToCellMap.size()])
- {
- MSPUB_DEBUG_MSG(("text of cell %u ends in the middle of a paragraph!\n", unsigned(paraToCellMap.size())));
- }
-
- paraToCellMap.push_back(std::make_pair(firstPara, para));
- firstPara = para + 1;
+ MSPUB_DEBUG_MSG(("text of cell %u ends in the middle of a paragraph!\n", unsigned(paraToCellMap.size())));
}
+
+ paraToCellMap.push_back(std::make_pair(firstPara, para));
+ firstPara = para + 1;
}
assert(paraTexts.size() == text.size());
More information about the Libreoffice-commits
mailing list