incubator-ooo-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject [Bug 119653] [From Symphony]Crash after delete column(s) from chart's source table, and then adjusted table size
Date Fri, 01 Jun 2012 06:11:47 GMT changed:

           What    |Removed                     |Added
                 CC|                            |

--- Comment #1 from ---
Root Cause:
The crash happens because of an exception was thrown out in
SwChartDataSequence::SetModified(), just because the SwCharDataSequence object
has been disposed.
The source code is located in main/sw/source/core/unocore/unochart.cxx.
void SAL_CALL SwChartDataSequence::setModified(::sal_Bool bModified )
    throw (beans::PropertyVetoException, uno::RuntimeException)
    vos::OGuard aGuard( Application::GetSolarMutex() );
    if (bDisposed)
        throw lang::DisposedException();

    if (bModified)
        LaunchModifiedEvent( aModifyListeners, dynamic_cast< XModifyBroadcaster
* >(this) );

Actually, the former design of SwClient will disband itself from the
notification list in its destruction. But the SwCharDataSeqence won't be
destructed but just disposed in code (the data member
SwChartDataSequence::bDisposed will be set to TRUE), the relationship between
client and modification are not released. So any notification from modify
object will lead this crash.

Recorrect the logic of code in SwChartDataSequence::Dispose(), release the
relationship inside..

You are receiving this mail because:
You are the assignee for the bug.

View raw message