[Libreoffice-commits] .: Branch 'libreoffice-4-0' - sc/source

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Thu Jan 10 21:09:59 PST 2013


 sc/source/ui/docshell/dbdocfun.cxx |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit cae060de53cbfc0737a75ed156aec8c383a14918
Author: Kohei Yoshida <kohei.yoshida at gmail.com>
Date:   Thu Jan 10 23:48:17 2013 -0500

    fdo#59084: Sync dimension members after reloading the group data.
    
    Else the syncing would end up syncing to the older version of the
    group data before the reload, which (as you can see in the bug report)
    may lead to a crash.
    
    Change-Id: Ibd674a97a59205e5e28efd007f8857731e8df4d3
    Reviewed-on: https://gerrit.libreoffice.org/1635
    Reviewed-by: Markus Mohrhard <markus.mohrhard at googlemail.com>
    Tested-by: Markus Mohrhard <markus.mohrhard at googlemail.com>

diff --git a/sc/source/ui/docshell/dbdocfun.cxx b/sc/source/ui/docshell/dbdocfun.cxx
index 4d0d2ec..3b1db2f 100644
--- a/sc/source/ui/docshell/dbdocfun.cxx
+++ b/sc/source/ui/docshell/dbdocfun.cxx
@@ -1319,6 +1319,8 @@ bool ScDBDocFunc::DataPilotUpdate( ScDPObject* pOldObj, const ScDPObject* pNewOb
             if ( pDestObj )
             {
                 pDestObj->ReloadGroupTableData();
+                if (!pDestObj->SyncAllDimensionMembers())
+                    return false;
                 pDestObj->InvalidateData();             // before getting the new output area
 
                 //  make sure the table has a name (not set by dialog)
@@ -1461,8 +1463,6 @@ sal_uLong ScDBDocFunc::RefreshPivotTables(ScDPObject* pDPObj, bool bApi)
     for (; it != itEnd; ++it)
     {
         ScDPObject* pObj = *it;
-        if (!pObj->SyncAllDimensionMembers())
-            continue;
 
         // This action is intentionally not undoable since it modifies cache.
         DataPilotUpdate(pObj, pObj, false, bApi);


More information about the Libreoffice-commits mailing list