From b73dec8a06ef762098e642b2c37e4baad780b11a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= Date: Thu, 12 Sep 2013 10:56:37 +0100 Subject: [PATCH] Resolves: rhbz#1006850 crash in SwCommentRuler::GetCommentControlRegion Change-Id: Ic846da3b22391d724da6f8df94dd771e89d2efb4 --- sw/source/ui/misc/swruler.cxx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sw/source/ui/misc/swruler.cxx b/sw/source/ui/misc/swruler.cxx index a41fc0b..76fb8be 100644 --- a/sw/source/ui/misc/swruler.cxx +++ b/sw/source/ui/misc/swruler.cxx @@ -247,6 +247,13 @@ void SwCommentRuler::UpdateCommentHelpText() Rectangle SwCommentRuler::GetCommentControlRegion() { SwPostItMgr *pPostItMgr = mpViewShell->GetPostItMgr(); + + //rhbz#1006850 When the SwPostItMgr ctor is called from SwView::SwView it + //triggers an update of the uiview, but the result of the ctor hasn't been + //set into the mpViewShell yet, so GetPostItMgr is temporarily still NULL + if (!pPostItMgr) + return Rectangle(); + //FIXME When the page width is larger then screen, the ruler is misplaced by one pixel long nLeft = GetWinOffset() + GetPageOffset() + mpSwWin->LogicToPixel(Size(GetPageWidth(), 0)).Width(); long nTop = 0 + 4; // Ruler::ImplDraw uses RULER_OFF (value: 3px) as offset, and Ruler::ImplFormat adds one extra pixel -- 1.8.3.1