[Libreoffice-commits] .: Branch 'libreoffice-3-6' - xmloff/source
Ivan Timofeev
ivantimofeev at kemper.freedesktop.org
Fri Aug 3 23:34:32 PDT 2012
xmloff/source/style/PageMasterImportPropMapper.cxx | 103 ++++++++++-----------
1 file changed, 52 insertions(+), 51 deletions(-)
New commits:
commit eb42588dcdfe27df5812f9f41b56022e0d5b4cf4
Author: Michael Stahl <mstahl at redhat.com>
Date: Fri Aug 3 21:09:34 2012 +0200
fdo#38056: fix XMLTextImportPropertyMapper regression:
The invalidation introduced in 7f9928bfa561ccb6ed4e2baacc7d6960bc1ce231
is unfortunately in the wrong place; the pAllFoo actually point at
vector elements, and so they must not be dereferenced after new elements
are added to the vector, so move the invalidation up a bit.
Change-Id: I244d1d5cfd40469ff6d2c081e057355460d34cf4
(cherry picked from commit 9e74e9f3c0931f34fb5421056851a06b83501ce9)
Signed-off-by: Ivan Timofeev <timofeev.i.s at gmail.com>
diff --git a/xmloff/source/style/PageMasterImportPropMapper.cxx b/xmloff/source/style/PageMasterImportPropMapper.cxx
index 005c732..0cacf02 100644
--- a/xmloff/source/style/PageMasterImportPropMapper.cxx
+++ b/xmloff/source/style/PageMasterImportPropMapper.cxx
@@ -353,6 +353,58 @@ void PageMasterImportPropertyMapper::finished(::std::vector< XMLPropertyState >&
aAny.setValue( &bValue, ::getBooleanCppuType() );
pFooterDynamic = new XMLPropertyState(pFooterMinHeight->mnIndex + 1, aAny);
}
+
+ // fdo#38056: nerf the various AllFoo properties so they do not override
+ // the individual Foo properties later on
+ if (pAllPaddingProperty)
+ {
+ pAllPaddingProperty->mnIndex = -1;
+ }
+ if (pAllBorderProperty)
+ {
+ pAllBorderProperty->mnIndex = -1;
+ }
+ if (pAllBorderWidthProperty)
+ {
+ pAllBorderWidthProperty->mnIndex = -1;
+ }
+ if (pAllHeaderPaddingProperty)
+ {
+ pAllHeaderPaddingProperty->mnIndex = -1;
+ }
+ if (pAllHeaderBorderProperty)
+ {
+ pAllHeaderBorderProperty->mnIndex = -1;
+ }
+ if (pAllHeaderBorderWidthProperty)
+ {
+ pAllHeaderBorderWidthProperty->mnIndex = -1;
+ }
+ if (pAllFooterPaddingProperty)
+ {
+ pAllFooterPaddingProperty->mnIndex = -1;
+ }
+ if (pAllFooterBorderProperty)
+ {
+ pAllFooterBorderProperty->mnIndex = -1;
+ }
+ if (pAllFooterBorderWidthProperty)
+ {
+ pAllFooterBorderWidthProperty->mnIndex = -1;
+ }
+ if (pAllMarginProperty)
+ {
+ pAllMarginProperty->mnIndex = -1;
+ }
+ if (pAllHeaderMarginProperty)
+ {
+ pAllHeaderMarginProperty->mnIndex = -1;
+ }
+ if (pAllFooterMarginProperty)
+ {
+ pAllFooterMarginProperty->mnIndex = -1;
+ }
+
for (sal_uInt16 i = 0; i < 4; i++)
{
if (pNewMargins[i].get())
@@ -408,57 +460,6 @@ void PageMasterImportPropertyMapper::finished(::std::vector< XMLPropertyState >&
rProperties.push_back(*pFooterDynamic);
delete pFooterDynamic;
}
-
- // fdo#38056: nerf the various AllFoo properties so they do not override
- // the individual Foo properties later on
- if (pAllPaddingProperty)
- {
- pAllPaddingProperty->mnIndex = -1;
- }
- if (pAllBorderProperty)
- {
- pAllBorderProperty->mnIndex = -1;
- }
- if (pAllBorderWidthProperty)
- {
- pAllBorderWidthProperty->mnIndex = -1;
- }
- if (pAllHeaderPaddingProperty)
- {
- pAllHeaderPaddingProperty->mnIndex = -1;
- }
- if (pAllHeaderBorderProperty)
- {
- pAllHeaderBorderProperty->mnIndex = -1;
- }
- if (pAllHeaderBorderWidthProperty)
- {
- pAllHeaderBorderWidthProperty->mnIndex = -1;
- }
- if (pAllFooterPaddingProperty)
- {
- pAllFooterPaddingProperty->mnIndex = -1;
- }
- if (pAllFooterBorderProperty)
- {
- pAllFooterBorderProperty->mnIndex = -1;
- }
- if (pAllFooterBorderWidthProperty)
- {
- pAllFooterBorderWidthProperty->mnIndex = -1;
- }
- if (pAllMarginProperty)
- {
- pAllMarginProperty->mnIndex = -1;
- }
- if (pAllHeaderMarginProperty)
- {
- pAllHeaderMarginProperty->mnIndex = -1;
- }
- if (pAllFooterMarginProperty)
- {
- pAllFooterMarginProperty->mnIndex = -1;
- }
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
More information about the Libreoffice-commits
mailing list