sd/source/ui/slidesorter/controller/SlideSorterController.cxx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
New commits: commit 125f0c95b7f5613d71bcf107b73a0ba422d54643 Author: Stephan Bergmann <sberg...@redhat.com> Date: Tue Oct 27 17:18:48 2015 +0100 Filter out non-VclWindowEvents ...to avoid bad casts like > sd/source/ui/slidesorter/controller/SlideSorterController.cxx:545:24: runtime error: downcast of address 0x7f2d4d9b0c40 which does not point to an object of type 'VclWindowEvent' > 0x7f2d4d9b0c40: note: object is of type 'VclMenuEvent' > 00 00 00 00 f0 f9 03 80 2d 7f 00 00 b2 04 00 00 00 00 00 00 40 51 72 00 10 61 00 00 01 00 00 00 > ^~~~~~~~~~~~~~~~~~~~~~~ > vptr for 'VclMenuEvent' > sd::slidesorter::controller::SlideSorterController::ApplicationEventHandler(VclSimpleEvent&) sd/source/ui/slidesorter/controller/SlideSorterController.cxx:545:24 > sd::slidesorter::controller::SlideSorterController::LinkStubApplicationEventHandler(void*, VclSimpleEvent&) sd/source/ui/slidesorter/controller/SlideSorterController.cxx:543:1 > Link<VclSimpleEvent&, void>::Call(VclSimpleEvent&) const include/tools/link.hxx:84:45 > VclEventListeners::Call(VclSimpleEvent&) const vcl/source/app/vclevent.cxx:74:17 > Application::ImplCallEventListeners(VclSimpleEvent&) vcl/source/app/svapp.cxx:820:9 > Menu::ImplCallEventListeners(unsigned long, unsigned short) vcl/source/window/menu.cxx:339:9 > [...] (Even the VCLEVENT_APPLICATION_DATACHANGED handled in WindowEventHandler /is/ a VclWindowEvent, see how these events are created via ImplCallEventListeners in Application::SetSettings, vcl/source/app/svapp.cxx.) Change-Id: I107cbbff83e4a41090aadee6a66e715ef35901d4 diff --git a/sd/source/ui/slidesorter/controller/SlideSorterController.cxx b/sd/source/ui/slidesorter/controller/SlideSorterController.cxx index da8a3ec..04cf538 100644 --- a/sd/source/ui/slidesorter/controller/SlideSorterController.cxx +++ b/sd/source/ui/slidesorter/controller/SlideSorterController.cxx @@ -542,7 +542,10 @@ void SlideSorterController::HandleModelChange() IMPL_LINK_TYPED(SlideSorterController, ApplicationEventHandler, VclSimpleEvent&, rEvent, void) { - WindowEventHandler(static_cast<VclWindowEvent&>(rEvent)); + auto windowEvent = dynamic_cast<VclWindowEvent *>(&rEvent); + if (windowEvent != nullptr) { + WindowEventHandler(*windowEvent); + } } IMPL_LINK_TYPED(SlideSorterController, WindowEventHandler, VclWindowEvent&, rEvent, void) { _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits