libreofficekit/qa/gtktiledviewer/gtv-lokdocview-signal-handlers.cxx | 5 +++++ 1 file changed, 5 insertions(+)
New commits: commit 00b552c02efe3bc157218dc8452a2cf87714ca0b Author: Mike Kaganski <mike.kagan...@collabora.com> AuthorDate: Wed Oct 26 17:10:10 2022 +0300 Commit: Mike Kaganski <mike.kagan...@collabora.com> CommitDate: Wed Oct 26 18:19:13 2022 +0200 gtktiledviewer: don't crash on sidebar creation There's no dialog parent for the sidebar child window. Just ignore the signal for now. Change-Id: Iadfae9174780b10b94e8dd3e6c9efc8c4e8b4b2b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141878 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kagan...@collabora.com> (cherry picked from commit 4a8fa1ba2fa5b4e3c95a255c0cb2d45df54aea38) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141847 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com> diff --git a/libreofficekit/qa/gtktiledviewer/gtv-lokdocview-signal-handlers.cxx b/libreofficekit/qa/gtktiledviewer/gtv-lokdocview-signal-handlers.cxx index 6816a17fcc2f..5b4bf08ec0b2 100644 --- a/libreofficekit/qa/gtktiledviewer/gtv-lokdocview-signal-handlers.cxx +++ b/libreofficekit/qa/gtktiledviewer/gtv-lokdocview-signal-handlers.cxx @@ -367,6 +367,11 @@ void LOKDocViewSigHandlers::window(LOKDocView* pDocView, gchar* pPayload, gpoint { const unsigned nParentId = std::atoi(aRoot.get<std::string>("parentId").c_str()); GtkWindow* pDialog = gtv_application_window_get_child_window_by_id(window, nParentId); + if (!pDialog) + { + g_warning("no parent dialog (id: %d) for created child; is child a sidebar?", nParentId); + return; + } const std::string aPos = aRoot.get<std::string>("position"); std::vector<int> aPosPoints = GtvHelpers::split<int>(aPos, ", ", 2); gtv_lok_dialog_child_create(GTV_LOK_DIALOG(pDialog), nWinId, aPosPoints[0], aPosPoints[1], aSizePoints[0], aSizePoints[1]);