diff options
Diffstat (limited to 'sc/source/ui/formdlg/dwfunctr.cxx')
-rw-r--r-- | sc/source/ui/formdlg/dwfunctr.cxx | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sc/source/ui/formdlg/dwfunctr.cxx b/sc/source/ui/formdlg/dwfunctr.cxx index 9cb5a305258f..a44b021bd237 100644 --- a/sc/source/ui/formdlg/dwfunctr.cxx +++ b/sc/source/ui/formdlg/dwfunctr.cxx @@ -112,7 +112,7 @@ ScFunctionDockWin::ScFunctionDockWin( SfxBindings* pBindingsP, eSfxNewAlignment=SfxChildAlignment::RIGHT; eSfxOldAlignment=eSfxNewAlignment; aFiFuncDesc->SetUpdateMode(true); - pAllFuncList=aFuncList.get(); + pAllFuncList=aFuncList; aDDFuncList->Disable(); aDDFuncList->Hide(); nArgs=0; @@ -275,7 +275,7 @@ void ScFunctionDockWin::SetSize() aPrivatSplit->Hide(); aFuncList->Disable(); aFuncList->Hide(); - pAllFuncList=aDDFuncList.get(); + pAllFuncList=aDDFuncList; SelHdl(*aCatBox.get()); aDDFuncList->SelectEntryPos(nSelEntry); } @@ -293,7 +293,7 @@ void ScFunctionDockWin::SetSize() aPrivatSplit->Show(); aFuncList->Enable(); aFuncList->Show(); - pAllFuncList=aFuncList.get(); + pAllFuncList=aFuncList; SelHdl(*aCatBox.get()); aFuncList->SelectEntryPos(nSelEntry); } @@ -822,6 +822,9 @@ void ScFunctionDockWin::DoEnter() if(!pScMod->IsEditMode()) { pScMod->SetInputMode(SC_INPUT_TABLE); + // the above call can result in us being disposed + if (OutputDevice::isDisposed()) + return; aString = "="; aString += pAllFuncList->GetSelectEntry(); if (pHdl) |