summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2014-05-23 23:23:19 +0200
committerStephan Bergmann <sbergman@redhat.com>2014-05-23 23:32:45 +0200
commit0086754e8dca3772547a9a07c4d1f10a5837b667 (patch)
tree0f3ec5563751f0f74579259eb5ea8c407ace1c3d
parent06afd4067f7bc321d7dd0a4e8c235b0b21e3d49a (diff)
For now, work around sporadic SwNoTxtFrm::Modify failures
...that appear sporadically in the wild but are decently reproducible at least on OS X when changing the DoUpdateModifiedOLE timeout in the SwDoc ctor (sw/source/core/doc/docnew.cxx) from 1000 to 100 when running CppunitTest_writerperfect_writer, caused by a bad static cast from an SwOLENode to an SwGrfNode at SwNoTxtFrm::Modify SwModify::ModifyBroadcast SwModify::NotifyClients SwCntntNode::Modify SwClient::ModifyNotification SwDoc::DoUpdateModifiedOLE SwDoc::LinkStubDoUpdateModifiedOLE Link::Call Timer::Timeout Timer::ImplTimerCallbackProc SalTimer::CallCallback -[TimerCallbackCaller timerElapsed:] [...] -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] AquaSalInstance::AnyInput Application::AnyInput SwLayAction::CheckIdleEnd SwLayAction::_FormatFlyCntnt SwObjectFormatter::_FormatObj SwObjectFormatterLayFrm::DoFormatObj SwObjectFormatter::_FormatObjsAtFrm SwObjectFormatterLayFrm::DoFormatObjs SwObjectFormatter::FormatObjsAtFrm SwLayAction::InternalAction SwLayAction::Action SwViewShell::ImplEndAction SwViewShell::EndAction SwCrsrShell::EndAction SwRootFrm::EndAllAction UnoActionContext::~UnoActionContext UnoActionContext::~UnoActionContext SwXTextDocument::unlockControllers writerperfect::test::WpftImportTestBase::load [...] Change-Id: I8903cf6890c3cf526768939dca2438fa2d978310
-rw-r--r--sw/source/core/doc/notxtfrm.cxx4
1 files changed, 4 insertions, 0 deletions
diff --git a/sw/source/core/doc/notxtfrm.cxx b/sw/source/core/doc/notxtfrm.cxx
index 0b0ba9245a9a..af2200e416f9 100644
--- a/sw/source/core/doc/notxtfrm.cxx
+++ b/sw/source/core/doc/notxtfrm.cxx
@@ -602,6 +602,10 @@ void SwNoTxtFrm::Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNew )
break;
case RES_UPDATE_ATTR:
+ if (GetNode()->GetNodeType() != ND_GRFNODE) {
+ break;
+ }
+ // fall through
case RES_FMT_CHG:
CLEARCACHE( (SwGrfNode*) GetNode() )
break;