sfx2: fix crash in SfxLokHelper::notifyOtherViews()

Crashreport signature:

program/libmergedlo.so
        SfxLokHelper::notifyOtherViews(SfxViewShell const*, int, boost::property_tree::basic_ptree<std::string, std::string, std::less<std::string> > const&)
                sfx2/source/view/lokhelper.cxx:518
program/libmergedlo.so
        ImpEditView::ShowCursor(bool, bool)
                editeng/source/editeng/impedit.cxx:1447
program/libsclo.so
        ScViewData::SetEditEngine(ScSplitPos, ScEditEngineDefaulter*, vcl::Window*, short, int)
                sc/source/ui/view/viewdata.cxx:1635
program/libsclo.so
        ScTabView::UpdateEditView()
                sc/source/ui/view/tabview3.cxx:2190
program/libsclo.so
        ScTabView::extendTiledAreaIfNeeded()
                sc/source/ui/view/tabview.cxx:3098
program/libmergedlo.so
        doc_setClientVisibleArea
                desktop/source/lib/init.cxx:6248

The current view should ideally never be nullptr, but if that's the
case, at least don't crash.

Change-Id: I521faa54373d2ce5ffb0983bac6caf0705767fdf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155275
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
This commit is contained in:
Miklos Vajna 2023-08-02 10:12:39 +02:00
parent da68615da5
commit 3bf0f056eb

View file

@ -505,7 +505,7 @@ void SfxLokHelper::notifyOtherViews(const SfxViewShell* pThisView, int nType,
const boost::property_tree::ptree& rTree)
{
assert(pThisView != nullptr && "pThisView must be valid");
if (DisableCallbacks::disabled())
if (!pThisView || DisableCallbacks::disabled())
return;
// Cache the payload so we only have to generate it once, at most.