You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by st...@apache.org on 2014/08/08 05:10:58 UTC
svn commit: r1616666 -
/openoffice/trunk/main/sw/source/filter/ww8/ww8graf.cxx
Author: steve_y
Date: Fri Aug 8 03:10:58 2014
New Revision: 1616666
URL: http://svn.apache.org/r1616666
Log:
https://issues.apache.org/ooo/show_bug.cgi?id=125391
Fixed by Oliver-Rainer Wittmann
Modified:
openoffice/trunk/main/sw/source/filter/ww8/ww8graf.cxx
Modified: openoffice/trunk/main/sw/source/filter/ww8/ww8graf.cxx
URL: http://svn.apache.org/viewvc/openoffice/trunk/main/sw/source/filter/ww8/ww8graf.cxx?rev=1616666&r1=1616665&r2=1616666&view=diff
==============================================================================
--- openoffice/trunk/main/sw/source/filter/ww8/ww8graf.cxx (original)
+++ openoffice/trunk/main/sw/source/filter/ww8/ww8graf.cxx Fri Aug 8 03:10:58 2014
@@ -2260,28 +2260,23 @@ RndStdIds SwWW8ImplReader::ProcessEscher
sal_uInt32 nXAlign = nCntXAlign > pRecord->nXAlign ? pRecord->nXAlign : 1;
sal_uInt32 nYAlign = nCntYAlign > pRecord->nYAlign ? pRecord->nYAlign : 1;
- if (pFSPA)
- {
- /*
- #74188# #i15718# #i19008#
- Strangely in this case the FSPA value seems to be considered before
- the newer escher nXRelTo record.
- */
- // --> OD 2005-08-04 #i52565# - correct condition checking:
- // first check, if <nXRelTo> and <nYRelTo> have default values. This
- // is a hint that these values aren't set by the escher import - see
- // method <SwMSDffManager::ProcessObj(..)>. Then, check if for each
- // values, if it differs from the one in the FSPA.
- if ( pRecord->nXRelTo == 2 && pRecord->nYRelTo == 2 && !bCurSectionVertical)
+ if ( pFSPA != NULL )
+ {
+ // #52565# - try to handle special case for objects in tables regarding its X Rel
+
+ // if X and Y Rel values are on default take it as a hint, that they have not been set
+ // by <SwMSDffManager::ProcessObj(..)>
+ const bool bXYRelHaveDefaultValues = pRecord->nXRelTo == 2 && pRecord->nYRelTo == 2;
+ if ( bXYRelHaveDefaultValues
+ && nInTable > 0
+ && !bCurSectionVertical )
{
- // if <nYRelTo> differs from <FSPA.nby> overwrite <nYRelTo>
if ( pFSPA->nby != pRecord->nYRelTo )
{
pRecord->nYRelTo = pFSPA->nby;
}
}
- // <--
- }
+ }
sal_uInt32 nXRelTo = nCntRelTo > pRecord->nXRelTo ? pRecord->nXRelTo : 1;
sal_uInt32 nYRelTo = nCntRelTo > pRecord->nYRelTo ? pRecord->nYRelTo : 1;