Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
89a0763e
Kaydet (Commit)
89a0763e
authored
May 16, 2015
tarafından
David Tardon
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
upload libmwaw 0.3.5
Change-Id: Ife74524f82190a06775656271965c869da8702a9
üst
1e8d6bb3
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
13 additions
and
149 deletions
+13
-149
download.lst
download.lst
+2
-2
0001-ClarisWorks-AppleWorks-spreadsheet-do-not-remove-fir.patch
...larisWorks-AppleWorks-spreadsheet-do-not-remove-fir.patch
+0
-99
0002-ClarisWors-AppleWorks-spreadsheet-Oops-correct-of-a-.patch
...larisWors-AppleWorks-spreadsheet-Oops-correct-of-a-.patch
+0
-31
Library_mwaw.mk
external/libmwaw/Library_mwaw.mk
+11
-0
UnpackedTarball_libmwaw.mk
external/libmwaw/UnpackedTarball_libmwaw.mk
+0
-6
ubsan.patch.0
external/libmwaw/ubsan.patch.0
+0
-11
No files found.
download.lst
Dosyayı görüntüle @
89a0763e
...
...
@@ -102,8 +102,8 @@ export MARIADB_TARBALL := a233181e03d3c307668b4c722d881661-mariadb_client-2.0.0-
export MDDS_TARBALL := 17edb780d4054e4205cd956910672b83-mdds_0.12.0.tar.bz2
export MSPUB_MD5SUM := ff9d0f9dd8fbc523408ea1953d5bde41
export MSPUB_TARBALL := libmspub-0.1.2.tar.bz2
export MWAW_MD5SUM :=
edb8a92a4b6746efbd45bde5006f71b9
export MWAW_VERSION_MICRO :=
4
export MWAW_MD5SUM :=
bdc58bbf89aaaf6d29b3516d96830a06
export MWAW_VERSION_MICRO :=
5
export MWAW_TARBALL := libmwaw-0.3.$(MWAW_VERSION_MICRO).tar.bz2
export MYSQLCPPCONN_TARBALL := 7239a4430efd4d0189c4f24df67f08e5-mysql-connector-c++-1.1.4.tar.gz
export MYTHES_TARBALL := a8c2c5b8f09e7ede322d5c602ff6a4b6-mythes-1.2.4.tar.gz
...
...
external/libmwaw/0001-ClarisWorks-AppleWorks-spreadsheet-do-not-remove-fir.patch
deleted
100644 → 0
Dosyayı görüntüle @
1e8d6bb3
From c092ac823e50083c04464565365ddd4af71f8c89 Mon Sep 17 00:00:00 2001
From: osnola <alonso@loria.fr>
Date: Tue, 6 Jan 2015 15:39:54 +0100
Subject: [PATCH 1/2] ClarisWorks/AppleWorks[spreadsheet]: do not remove first
empty rows and/or columns in the main spreadsheet + if we remove some first
rows/columns in a embedded spreadsheet, update the cells present in
formula...
---
src/lib/ClarisWksDbaseContent.cxx | 29 +++++++++++++++++++++++++++++
src/lib/ClarisWksDbaseContent.hxx | 3 ++-
src/lib/ClarisWksSpreadsheet.cxx | 5 +++++
3 files changed, 36 insertions(+), 1 deletion(-)
diff --git a/src/lib/ClarisWksDbaseContent.cxx b/src/lib/ClarisWksDbaseContent.cxx
index 7226af1..ea15544 100644
--- a/src/lib/ClarisWksDbaseContent.cxx
+++ b/src/lib/ClarisWksDbaseContent.cxx
@@ -1393,4 +1393,33 @@ bool ClarisWksDbaseContent::readFormula(Vec2i const &cPos, long endPos, std::vec
return true;
}
+
+////////////////////////////////////////////////////////////
+//
+////////////////////////////////////////////////////////////
+void ClarisWksDbaseContent::Record::updateFormulaCells(Vec2i const &removeDelta)
+{
+ if (m_content.m_contentType!=MWAWCellContent::C_FORMULA)
+ return;
+ std::vector<MWAWCellContent::FormulaInstruction> &formula=m_content.m_formula;
+ for (size_t i=0; i<formula.size(); ++i) {
+ MWAWCellContent::FormulaInstruction &instr=formula[i];
+ int numCell=instr.m_type==MWAWCellContent::FormulaInstruction::F_Cell ? 1 :
+ instr.m_type==MWAWCellContent::FormulaInstruction::F_CellList ? 2 : 0;
+ for (int c=0; c<numCell; ++c) {
+ instr.m_position[c]-=removeDelta;
+ if (instr.m_position[c][0]<0 || instr.m_position[c][1]<0) {
+ static bool first=true;
+ if (first) {
+ MWAW_DEBUG_MSG(("ClarisWksDbaseContent::Record::updateFormulaCells: some cell's positions are bad, remove formula\n"));
+ first=false;
+ // revert to the basic cell type
+ m_content.m_contentType=m_valueType;
+ return;
+ }
+ }
+ }
+ }
+}
+
// vim: set filetype=cpp tabstop=2 shiftwidth=2 cindent autoindent smartindent noexpandtab:
diff --git a/src/lib/ClarisWksDbaseContent.hxx b/src/lib/ClarisWksDbaseContent.hxx
index 4894d31..8a40b31 100644
--- a/src/lib/ClarisWksDbaseContent.hxx
+++ b/src/lib/ClarisWksDbaseContent.hxx
@@ -83,7 +83,8 @@ public:
m_content(), m_valueType(MWAWCellContent::C_UNKNOWN), m_hasNaNValue(false), m_backgroundColor(MWAWColor::white()), m_font(3,9), m_borders(0)
{
}
-
+ //! update the formula cell (removing delta to each position)
+ void updateFormulaCells(Vec2i const &removeDelta);
//! the style if known
int m_style;
//! the format
diff --git a/src/lib/ClarisWksSpreadsheet.cxx b/src/lib/ClarisWksSpreadsheet.cxx
index c6b9f3d..60eb293 100644
--- a/src/lib/ClarisWksSpreadsheet.cxx
+++ b/src/lib/ClarisWksSpreadsheet.cxx
@@ -455,6 +455,8 @@ bool ClarisWksSpreadsheet::sendSpreadsheet(int zId, MWAWListenerPtr listener)
MWAW_DEBUG_MSG(("ClarisWksSpreadsheet::sendSpreadsheet: can not find content\n"));
return false;
}
+ if (m_parserState->m_kind==MWAWDocument::MWAW_K_SPREADSHEET && zId==1)
+ minData=Vec2i(0,0);
std::vector<float> colSize((size_t)(maxData[0]-minData[0]+1),72);
for (int c=minData[0], fC=0; c <= maxData[0]; ++c, ++fC) {
if (c>=0 && c < int(sheet.m_colWidths.size()))
@@ -462,6 +464,7 @@ bool ClarisWksSpreadsheet::sendSpreadsheet(int zId, MWAWListenerPtr listener)
}
sheetListener->openSheet(colSize, librevenge::RVNG_POINT);
MWAWInputStreamPtr &input= m_parserState->m_input;
+ bool recomputeCellPosition=(minData!=Vec2i(0,0));
for (int r=minData[1], fR=0; r <= maxData[1]; ++r, ++fR) {
if (sheet.m_rowHeightMap.find(r)!=sheet.m_rowHeightMap.end())
sheetListener->openSheetRow((float)sheet.m_rowHeightMap.find(r)->second, librevenge::RVNG_POINT);
@@ -478,6 +481,8 @@ bool ClarisWksSpreadsheet::sendSpreadsheet(int zId, MWAWListenerPtr listener)
// change the reference date from 1/1/1904 to 1/1/1900
if (rec.m_format.m_format==MWAWCell::F_DATE && rec.m_content.isValueSet())
rec.m_content.setValue(rec.m_content.m_value+1460);
+ if (recomputeCellPosition)
+ rec.updateFormulaCells(minData);
if (rec.m_borders) {
int wh=0;
for (int i=0, bit=1; i < 4; ++i, bit*=2) {
--
2.1.0
external/libmwaw/0002-ClarisWors-AppleWorks-spreadsheet-Oops-correct-of-a-.patch
deleted
100644 → 0
Dosyayı görüntüle @
1e8d6bb3
From bc03e5d29fbf3eb3f58b9f91c7e8c748239721ac Mon Sep 17 00:00:00 2001
From: osnola <alonso@loria.fr>
Date: Tue, 6 Jan 2015 15:48:18 +0100
Subject: [PATCH 2/2] ClarisWors/AppleWorks[spreadsheet]: Oops, correct of a
mistake...
---
src/lib/ClarisWksDbaseContent.cxx | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/lib/ClarisWksDbaseContent.cxx b/src/lib/ClarisWksDbaseContent.cxx
index ea15544..e175c2e 100644
--- a/src/lib/ClarisWksDbaseContent.cxx
+++ b/src/lib/ClarisWksDbaseContent.cxx
@@ -1413,10 +1413,10 @@ void ClarisWksDbaseContent::Record::updateFormulaCells(Vec2i const &removeDelta)
if (first) {
MWAW_DEBUG_MSG(("ClarisWksDbaseContent::Record::updateFormulaCells: some cell's positions are bad, remove formula\n"));
first=false;
- // revert to the basic cell type
- m_content.m_contentType=m_valueType;
- return;
}
+ // revert to the basic cell type
+ m_content.m_contentType=m_valueType;
+ return;
}
}
}
--
2.1.0
external/libmwaw/Library_mwaw.mk
Dosyayı görüntüle @
89a0763e
...
...
@@ -40,6 +40,10 @@ $(eval $(call gb_Library_add_generated_exception_objects,mwaw,\
UnpackedTarball/libmwaw/src/lib/BeagleWksSSParser \
UnpackedTarball/libmwaw/src/lib/BeagleWksStructManager \
UnpackedTarball/libmwaw/src/lib/BeagleWksText \
UnpackedTarball/libmwaw/src/lib/ClarisDrawGraph \
UnpackedTarball/libmwaw/src/lib/ClarisDrawParser \
UnpackedTarball/libmwaw/src/lib/ClarisDrawStyleManager \
UnpackedTarball/libmwaw/src/lib/ClarisDrawText \
UnpackedTarball/libmwaw/src/lib/ClarisWksBMParser \
UnpackedTarball/libmwaw/src/lib/ClarisWksDatabase \
UnpackedTarball/libmwaw/src/lib/ClarisWksDbaseContent \
...
...
@@ -113,6 +117,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,mwaw,\
UnpackedTarball/libmwaw/src/lib/MWAWTable \
UnpackedTarball/libmwaw/src/lib/MWAWTextListener \
UnpackedTarball/libmwaw/src/lib/MacDocParser \
UnpackedTarball/libmwaw/src/lib/MacDraftParser \
UnpackedTarball/libmwaw/src/lib/MacDrawParser \
UnpackedTarball/libmwaw/src/lib/MacDrawProParser \
UnpackedTarball/libmwaw/src/lib/MacDrawProStyleManager \
...
...
@@ -145,6 +150,12 @@ $(eval $(call gb_Library_add_generated_exception_objects,mwaw,\
UnpackedTarball/libmwaw/src/lib/NisusWrtParser \
UnpackedTarball/libmwaw/src/lib/NisusWrtStruct \
UnpackedTarball/libmwaw/src/lib/NisusWrtText \
UnpackedTarball/libmwaw/src/lib/RagTime5ClusterManager \
UnpackedTarball/libmwaw/src/lib/RagTime5Graph \
UnpackedTarball/libmwaw/src/lib/RagTime5Parser \
UnpackedTarball/libmwaw/src/lib/RagTime5Spreadsheet \
UnpackedTarball/libmwaw/src/lib/RagTime5StructManager \
UnpackedTarball/libmwaw/src/lib/RagTime5Text \
UnpackedTarball/libmwaw/src/lib/RagTimeParser \
UnpackedTarball/libmwaw/src/lib/RagTimeSpreadsheet \
UnpackedTarball/libmwaw/src/lib/RagTimeStruct \
...
...
external/libmwaw/UnpackedTarball_libmwaw.mk
Dosyayı görüntüle @
89a0763e
...
...
@@ -13,12 +13,6 @@ $(eval $(call gb_UnpackedTarball_set_tarball,libmwaw,$(MWAW_TARBALL)))
$(eval $(call gb_UnpackedTarball_set_patchlevel,libmwaw,1))
$(eval $(call gb_UnpackedTarball_add_patches,libmwaw,\
external/libmwaw/0001-ClarisWorks-AppleWorks-spreadsheet-do-not-remove-fir.patch \
external/libmwaw/0002-ClarisWors-AppleWorks-spreadsheet-Oops-correct-of-a-.patch \
external/libmwaw/ubsan.patch.0 \
))
ifeq ($(COM_GCC_IS_CLANG),TRUE)
ifneq ($(filter -fsanitize=%,$(CC)),)
$(eval $(call gb_UnpackedTarball_add_patches,libmwaw, \
...
...
external/libmwaw/ubsan.patch.0
deleted
100644 → 0
Dosyayı görüntüle @
1e8d6bb3
--- src/lib/WingzParser.cxx
+++ src/lib/WingzParser.cxx
@@ -1120,7 +1120,7 @@
MWAWColor colors[4];
for (int i=0; i<4; ++i) { // font, back, unknown,font color
val=(int) input->readULong(4);
- int col=((val>>16)&0xFF)|(val&0xFF00)|((val<<16)&0xFFFFFF);
+ int col=((val>>16)&0xFF)|(val&0xFF00)|((val&0xFF)<<16);
int high=(val>>24);
colors[i]=MWAWColor(uint32_t(col)|0xFF000000);
switch (i) {
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment