[Libreoffice-commits] core.git: 13 commits - forms/source sc/inc sc/source sdext/source sfx2/source svtools/source svx/source sw/source tools/source vcl/source writerfilter/source

Caolán McNamara caolanm at redhat.com
Sat Feb 22 19:32:01 PST 2014


 forms/source/component/imgprod.cxx             |    3 
 sc/inc/nameuno.hxx                             |    3 
 sc/source/ui/unoobj/nameuno.cxx                |    2 
 sdext/source/presenter/PresenterScrollBar.cxx  |    2 
 sdext/source/presenter/PresenterScrollBar.hxx  |    2 
 sfx2/source/view/frame.cxx                     |    3 
 svtools/source/control/valueacc.cxx            |   18 ++--
 svx/source/fmcomp/gridcell.cxx                 |    5 -
 sw/source/filter/html/swhtml.cxx               |    2 
 sw/source/filter/ww8/wrtw8nds.cxx              |    7 +
 tools/source/memtools/multisel.cxx             |    2 
 vcl/source/control/tabctrl.cxx                 |    2 
 vcl/source/window/winproc.cxx                  |  110 +++++++++++++------------
 writerfilter/source/rtftok/rtfdocumentimpl.cxx |    2 
 14 files changed, 92 insertions(+), 71 deletions(-)

New commits:
commit a35d8b1caf39b683c9dfdda58482ca93617cd0a9
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 21:35:38 2014 +0000

    coverity#735576 nKeyword can only be RTF_SBASEDON here
    
    Change-Id: I26b0dc18e9b4a99b267a28d768c235ef5abbe755

diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 36dfc5a..2824640 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -2861,7 +2861,7 @@ int RTFDocumentImpl::dispatchValue(RTFKeyword nKeyword, int nParam)
         case RTF_RIN: nSprm = 0x845d; break;
         case RTF_ITAP: nSprm = NS_sprm::LN_PTableDepth; break;
         case RTF_SBASEDON:
-           nSprm = (nKeyword == RTF_SBASEDON) ? NS_ooxml::LN_CT_Style_basedOn : NS_ooxml::LN_CT_Style_next;
+           nSprm = NS_ooxml::LN_CT_Style_basedOn;
            pIntValue.reset(new RTFValue(getStyleName(nParam)));
            break;
         default: break;
commit af8712655a0569be0c2ea9524157f0be181d080d
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 21:31:41 2014 +0000

    coverity#708554 Uninitialized scalar field
    
    Change-Id: Ib604b25f8c2855439171e0606838b7cc36161976

diff --git a/tools/source/memtools/multisel.cxx b/tools/source/memtools/multisel.cxx
index 65a13c1d..50a2242 100644
--- a/tools/source/memtools/multisel.cxx
+++ b/tools/source/memtools/multisel.cxx
@@ -102,7 +102,9 @@ bool MultiSelection::ImplMergeSubSelections( size_t nPos1, size_t nPos2 )
 MultiSelection::MultiSelection():
     aTotRange( 0, -1 ),
     nCurSubSel(0),
+    nCurIndex(0),
     nSelCount(0),
+    bInverseCur(false),
     bCurValid(false),
     bSelectNew(false)
 {
commit 836a200e5182bae2d06e5671719a26db95d7a995
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 21:29:19 2014 +0000

    coverity#708355 Uninitialized pointer field
    
    Change-Id: I2303b9277fcccc809c4e56113d082b57e21ad010

diff --git a/svx/source/fmcomp/gridcell.cxx b/svx/source/fmcomp/gridcell.cxx
index 624816c..b27532a 100644
--- a/svx/source/fmcomp/gridcell.cxx
+++ b/svx/source/fmcomp/gridcell.cxx
@@ -546,6 +546,7 @@ TYPEINIT1( DbFilterField, DbCellControl )
 //------------------------------------------------------------------------------
 DbCellControl::DbCellControl( DbGridColumn& _rColumn, sal_Bool /*_bText*/ )
     :OPropertyChangeListener(m_aMutex)
+    ,m_pModelChangeBroadcaster(NULL)
     ,m_pFieldChangeBroadcaster(NULL)
     ,m_bTransparent( sal_False )
     ,m_bAlignedController( sal_True )
commit 4408f562e99d50e5a9ca45362545a82a9fdf16a8
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 21:25:55 2014 +0000

    coverity#704817 Unchecked dynamic_cast
    
    Change-Id: Ie268042184aa19b022de506935b34275958c01c4

diff --git a/svx/source/fmcomp/gridcell.cxx b/svx/source/fmcomp/gridcell.cxx
index 12448a0..624816c 100644
--- a/svx/source/fmcomp/gridcell.cxx
+++ b/svx/source/fmcomp/gridcell.cxx
@@ -2162,13 +2162,13 @@ namespace
 //------------------------------------------------------------------------------
 OUString DbCurrencyField::GetFormatText(const Reference< ::com::sun::star::sdb::XColumn >& _rxField, const Reference< ::com::sun::star::util::XNumberFormatter >& _rxFormatter, Color** /*ppColor*/)
 {
-    return lcl_setFormattedCurrency_nothrow( *dynamic_cast< LongCurrencyField* >( m_pPainter ), *this, _rxField, _rxFormatter );
+    return lcl_setFormattedCurrency_nothrow( dynamic_cast< LongCurrencyField& >( *m_pPainter ), *this, _rxField, _rxFormatter );
 }
 
 //------------------------------------------------------------------------------
 void DbCurrencyField::UpdateFromField(const Reference< ::com::sun::star::sdb::XColumn >& _rxField, const Reference< ::com::sun::star::util::XNumberFormatter >& _rxFormatter)
 {
-    lcl_setFormattedCurrency_nothrow( *dynamic_cast< LongCurrencyField* >( m_pWindow ), *this, _rxField, _rxFormatter );
+    lcl_setFormattedCurrency_nothrow( dynamic_cast< LongCurrencyField& >( *m_pWindow ), *this, _rxField, _rxFormatter );
 }
 
 //------------------------------------------------------------------------------
commit 0ac8d57b0c9a6a16aa1e49ee269b1affe6e7e04a
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 21:23:18 2014 +0000

    coverity#983817 Uncaught exception
    
    Change-Id: I91883489d9557c5e3779c6b16bf377c1b95e49da

diff --git a/sdext/source/presenter/PresenterScrollBar.cxx b/sdext/source/presenter/PresenterScrollBar.cxx
index c48b8d1..44cb4e6 100644
--- a/sdext/source/presenter/PresenterScrollBar.cxx
+++ b/sdext/source/presenter/PresenterScrollBar.cxx
@@ -447,7 +447,7 @@ void SAL_CALL PresenterScrollBar::mouseMoved (const css::awt::MouseEvent& rEvent
 }
 
 void SAL_CALL PresenterScrollBar::mouseDragged (const css::awt::MouseEvent& rEvent)
-    throw (css::uno::RuntimeException)
+    throw (css::uno::RuntimeException, std::exception)
 {
     if (meButtonDownArea != Thumb)
         return;
diff --git a/sdext/source/presenter/PresenterScrollBar.hxx b/sdext/source/presenter/PresenterScrollBar.hxx
index d7006b4..227bf59 100644
--- a/sdext/source/presenter/PresenterScrollBar.hxx
+++ b/sdext/source/presenter/PresenterScrollBar.hxx
@@ -150,7 +150,7 @@ public:
         throw (css::uno::RuntimeException);
 
     virtual void SAL_CALL mouseDragged (const css::awt::MouseEvent& rEvent)
-        throw (css::uno::RuntimeException);
+        throw (css::uno::RuntimeException, std::exception);
 
     // lang::XEventListener
     virtual void SAL_CALL disposing (const css::lang::EventObject& rEvent)
commit 78f7d7bc10dd582bf198e8b2ecba5a5a05c3f89a
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 21:19:10 2014 +0000

    coverity#737636 Uncaught exception
    
    Change-Id: I80d01d49cd5198c4be92b0573f526fb0c190eda2

diff --git a/sc/inc/nameuno.hxx b/sc/inc/nameuno.hxx
index 244a1f2..463aafb 100644
--- a/sc/inc/nameuno.hxx
+++ b/sc/inc/nameuno.hxx
@@ -87,7 +87,8 @@ public:
                                 throw(::com::sun::star::uno::RuntimeException);
     virtual void SAL_CALL   setReferencePosition(
                                 const ::com::sun::star::table::CellAddress& aReferencePosition )
-                                    throw(::com::sun::star::uno::RuntimeException);
+                                    throw (::com::sun::star::uno::RuntimeException,
+                                           std::exception);
     virtual sal_Int32       SAL_CALL getType() throw(::com::sun::star::uno::RuntimeException);
     virtual void SAL_CALL   setType( sal_Int32 nType ) throw(::com::sun::star::uno::RuntimeException);
 
diff --git a/sc/source/ui/unoobj/nameuno.cxx b/sc/source/ui/unoobj/nameuno.cxx
index 55b6d43..0454aed 100644
--- a/sc/source/ui/unoobj/nameuno.cxx
+++ b/sc/source/ui/unoobj/nameuno.cxx
@@ -280,7 +280,7 @@ table::CellAddress SAL_CALL ScNamedRangeObj::getReferencePosition()
 }
 
 void SAL_CALL ScNamedRangeObj::setReferencePosition( const table::CellAddress& aReferencePosition )
-                                                throw(uno::RuntimeException)
+    throw (uno::RuntimeException, std::exception)
 {
     SolarMutexGuard aGuard;
     ScAddress aPos( (SCCOL)aReferencePosition.Column, (SCROW)aReferencePosition.Row, aReferencePosition.Sheet );
commit dd19af605fde0abff123b6ea553fbf04f67e475b
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 21:15:01 2014 +0000

    coverity#705435 Improper use of negative value
    
    Change-Id: I87a0b85f4ddcecde1bafa3ecf96a0cabbbcdbd5b

diff --git a/sw/source/filter/ww8/wrtw8nds.cxx b/sw/source/filter/ww8/wrtw8nds.cxx
index e6e4130..645b82f 100644
--- a/sw/source/filter/ww8/wrtw8nds.cxx
+++ b/sw/source/filter/ww8/wrtw8nds.cxx
@@ -2281,10 +2281,13 @@ void MSWordExportBase::OutputTextNode( const SwTxtNode& rNode )
         if ( aAttrIter.IsParaRTL())
             bParaRTL = true;
 
-        if( rNode.IsNumbered())
+        int nNumberLevel = -1;
+        if (rNode.IsNumbered())
+            nNumberLevel = rNode.GetActualListLevel();
+        if (nNumberLevel >= 0 && nNumberLevel < MAXLEVEL)
         {
             const SwNumRule* pRule = rNode.GetNumRule();
-            sal_uInt8 nLvl = static_cast< sal_uInt8 >( rNode.GetActualListLevel() );
+            sal_uInt8 nLvl = static_cast< sal_uInt8 >(nNumberLevel);
             const SwNumFmt* pFmt = pRule->GetNumFmt( nLvl );
             if( !pFmt )
                 pFmt = &pRule->Get( nLvl );
commit 297c78b819f8bae726d9d4b9c749cc21223dd78b
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 21:07:00 2014 +0000

    coverity#441618 Dereference null return value
    
    Change-Id: Id3e2ba08093bc618c17485122579898301df14d8

diff --git a/sfx2/source/view/frame.cxx b/sfx2/source/view/frame.cxx
index 357b3e1..f565c8b 100644
--- a/sfx2/source/view/frame.cxx
+++ b/sfx2/source/view/frame.cxx
@@ -910,7 +910,8 @@ void SfxFrame::Resize()
                 if ( nHandle )
                 {
                     SfxObjectShell* pDoc = reinterpret_cast< SfxObjectShell* >( sal::static_int_cast< sal_IntPtr >( nHandle ));
-                    pWork = SfxViewFrame::GetFirst( pDoc )->GetFrame().GetWorkWindow_Impl();
+                    SfxViewFrame *pFrame = SfxViewFrame::GetFirst( pDoc );
+                    pWork = pFrame ? pFrame->GetFrame().GetWorkWindow_Impl() : NULL;
                 }
             }
 
commit fedebb269e815a3475cefc21556031e09bb3f35e
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 21:04:50 2014 +0000

    coverity#704988 Dereference after null check
    
    Change-Id: I641f9cf087cb2cd7f26daa70c886f174a8404ba9

diff --git a/sw/source/filter/html/swhtml.cxx b/sw/source/filter/html/swhtml.cxx
index 4ac0378..1bc33ef 100644
--- a/sw/source/filter/html/swhtml.cxx
+++ b/sw/source/filter/html/swhtml.cxx
@@ -906,7 +906,7 @@ void SwHTMLParser::Modify( const SfxPoolItem* pOld, const SfxPoolItem *pNew )
     switch( pOld ? pOld->Which() : pNew ? pNew->Which() : 0 )
     {
     case RES_OBJECTDYING:
-        if( ((SwPtrMsgPoolItem *)pOld)->pObject == GetRegisteredIn() )
+        if (pOld && ((SwPtrMsgPoolItem *)pOld)->pObject == GetRegisteredIn())
         {
             // dann uns selbst beenden
             GetRegisteredInNonConst()->Remove( this );
commit 7e8ce6c6662add1ce10e2fda2cdd236c30c240ae
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 21:02:51 2014 +0000

    coverity#441533 Dereference after null check
    
    Change-Id: Iee024e2a16291aed98c10bfb6c33af6b17d44e4e

diff --git a/vcl/source/control/tabctrl.cxx b/vcl/source/control/tabctrl.cxx
index 152449e..81d2119 100644
--- a/vcl/source/control/tabctrl.cxx
+++ b/vcl/source/control/tabctrl.cxx
@@ -644,7 +644,7 @@ void TabControl::ImplChangeTabPage( sal_uInt16 nId, sal_uInt16 nOldId )
         sal_uInt16 nPos = GetPagePos( nId );
         Rectangle aRect = ImplGetTabRect( nPos );
 
-        if ( !pOldItem || (pOldItem->mnLine != pItem->mnLine) )
+        if ( !pOldItem || !pItem || (pOldItem->mnLine != pItem->mnLine) )
         {
             aRect.Left() = 0;
             aRect.Top() = 0;
commit c4a766db25f0f11a19dc552de6a91f4e1404229f
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 20:59:00 2014 +0000

    coverity#441203 Dereference after null check
    
    Change-Id: I166e9ab8d3693568cc2b6a0ecd7d49532508116b

diff --git a/svtools/source/control/valueacc.cxx b/svtools/source/control/valueacc.cxx
index e5a7a98..098ee4b 100644
--- a/svtools/source/control/valueacc.cxx
+++ b/svtools/source/control/valueacc.cxx
@@ -286,17 +286,19 @@ OUString SAL_CALL ValueSetAcc::getAccessibleName()
     const SolarMutexGuard aSolarGuard;
     OUString              aRet;
 
-    if ( mpParent )
+    if (mpParent)
+    {
         aRet = mpParent->GetAccessibleName();
 
-    if ( aRet.isEmpty() )
-    {
-        Window* pLabel = mpParent->GetAccessibleRelationLabeledBy();
-        if ( pLabel && pLabel != mpParent )
-            aRet = OutputDevice::GetNonMnemonicString( pLabel->GetText() );
+        if ( aRet.isEmpty() )
+        {
+            Window* pLabel = mpParent->GetAccessibleRelationLabeledBy();
+            if ( pLabel && pLabel != mpParent )
+                aRet = OutputDevice::GetNonMnemonicString( pLabel->GetText() );
 
-        if (aRet.isEmpty())
-             aRet = mpParent->GetQuickHelpText();
+            if (aRet.isEmpty())
+                 aRet = mpParent->GetQuickHelpText();
+        }
     }
 
     return aRet;
commit 841ea0ace7c1913459b9f56f774eb7398058bf14
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 20:57:05 2014 +0000

    coverity#441137 Dereference after null check
    
    Change-Id: I877abe904885f28560cf43ee70001ac97fadbe04

diff --git a/forms/source/component/imgprod.cxx b/forms/source/component/imgprod.cxx
index fe82b06..e9c6a69 100644
--- a/forms/source/component/imgprod.cxx
+++ b/forms/source/component/imgprod.cxx
@@ -333,6 +333,9 @@ void ImageProducer::startProduction() throw(::com::sun::star::uno::RuntimeExcept
 
 sal_Bool ImageProducer::ImplImportGraphic( Graphic& rGraphic )
 {
+    if (!mpStm)
+        return false;
+
     if( ERRCODE_IO_PENDING == mpStm->GetError() )
         mpStm->ResetError();
 
commit 338beca1f2fe525265e736d8c1f10b826e14cbd1
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Sat Feb 22 20:53:58 2014 +0000

    coverity#440750 Dereference after null check
    
    Change-Id: I155e9fabaf26df71758c4b8da92664a35956accb

diff --git a/vcl/source/window/winproc.cxx b/vcl/source/window/winproc.cxx
index 33d764d..5a9e2f14 100644
--- a/vcl/source/window/winproc.cxx
+++ b/vcl/source/window/winproc.cxx
@@ -287,16 +287,15 @@ bool ImplHandleMouseEvent( Window* pWindow, sal_uInt16 nSVEvent, bool bMouseLeav
 {
     ImplSVData* pSVData = ImplGetSVData();
     Point       aMousePos( nX, nY );
-    Window*     pChild;
-    bool        nRet;
-    sal_uInt16      nClicks;
+    Window*     pChild(NULL);
+    bool        bRet(false);
+    sal_uInt16  nClicks(0);
     ImplFrameData* pWinFrameData = pWindow->ImplGetFrameData();
     sal_uInt16      nOldCode = pWinFrameData->mnMouseCode;
 
     // we need a mousemove event, befor we get a mousebuttondown or a
     // mousebuttonup event
-    if ( (nSVEvent == EVENT_MOUSEBUTTONDOWN) ||
-         (nSVEvent == EVENT_MOUSEBUTTONUP) )
+    if ( (nSVEvent == EVENT_MOUSEBUTTONDOWN) || (nSVEvent == EVENT_MOUSEBUTTONUP) )
     {
         if ( (nSVEvent == EVENT_MOUSEBUTTONUP) && pSVData->maHelpData.mbExtHelpMode )
             Help::EndExtHelp();
@@ -595,48 +594,54 @@ bool ImplHandleMouseEvent( Window* pWindow, sal_uInt16 nSVEvent, bool bMouseLeav
     }
     else
     {
-        // mouse click
-        if ( nSVEvent == EVENT_MOUSEBUTTONDOWN )
+        if (pChild)
         {
-            const MouseSettings& rMSettings = pChild->GetSettings().GetMouseSettings();
-            sal_uLong   nDblClkTime = rMSettings.GetDoubleClickTime();
-            long    nDblClkW    = rMSettings.GetDoubleClickWidth();
-            long    nDblClkH    = rMSettings.GetDoubleClickHeight();
-            //long    nMouseX     = nX;
-            //long    nMouseY     = nY;
-            long nMouseX = aMousePos.X();   // #106074# use the possibly re-mirrored coordinates (RTL) ! nX,nY are unmodified !
-            long nMouseY = aMousePos.Y();
-
-            if ( (pChild == pChild->ImplGetFrameData()->mpMouseDownWin) &&
-                 (nCode == pChild->ImplGetFrameData()->mnFirstMouseCode) &&
-                 ((nMsgTime-pChild->ImplGetFrameData()->mnMouseDownTime) < nDblClkTime) &&
-                 ((nMouseX-nDblClkW) <= pChild->ImplGetFrameData()->mnFirstMouseX) &&
-                 ((nMouseX+nDblClkW) >= pChild->ImplGetFrameData()->mnFirstMouseX) &&
-                 ((nMouseY-nDblClkH) <= pChild->ImplGetFrameData()->mnFirstMouseY) &&
-                 ((nMouseY+nDblClkH) >= pChild->ImplGetFrameData()->mnFirstMouseY) )
-            {
-                pChild->ImplGetFrameData()->mnClickCount++;
-                pChild->ImplGetFrameData()->mbStartDragCalled  = true;
-            }
-            else
+            // mouse click
+            if ( nSVEvent == EVENT_MOUSEBUTTONDOWN )
             {
-                pChild->ImplGetFrameData()->mpMouseDownWin     = pChild;
-                pChild->ImplGetFrameData()->mnClickCount       = 1;
-                pChild->ImplGetFrameData()->mnFirstMouseX      = nMouseX;
-                pChild->ImplGetFrameData()->mnFirstMouseY      = nMouseY;
-                pChild->ImplGetFrameData()->mnFirstMouseCode   = nCode;
-                pChild->ImplGetFrameData()->mbStartDragCalled  = !((nCode & (MOUSE_LEFT | MOUSE_RIGHT | MOUSE_MIDDLE)) ==
-                                                            (rMSettings.GetStartDragCode() & (MOUSE_LEFT | MOUSE_RIGHT | MOUSE_MIDDLE)));
+                const MouseSettings& rMSettings = pChild->GetSettings().GetMouseSettings();
+                sal_uLong   nDblClkTime = rMSettings.GetDoubleClickTime();
+                long    nDblClkW    = rMSettings.GetDoubleClickWidth();
+                long    nDblClkH    = rMSettings.GetDoubleClickHeight();
+                //long    nMouseX     = nX;
+                //long    nMouseY     = nY;
+                long nMouseX = aMousePos.X();   // #106074# use the possibly re-mirrored coordinates (RTL) ! nX,nY are unmodified !
+                long nMouseY = aMousePos.Y();
+
+                if ( (pChild == pChild->ImplGetFrameData()->mpMouseDownWin) &&
+                     (nCode == pChild->ImplGetFrameData()->mnFirstMouseCode) &&
+                     ((nMsgTime-pChild->ImplGetFrameData()->mnMouseDownTime) < nDblClkTime) &&
+                     ((nMouseX-nDblClkW) <= pChild->ImplGetFrameData()->mnFirstMouseX) &&
+                     ((nMouseX+nDblClkW) >= pChild->ImplGetFrameData()->mnFirstMouseX) &&
+                     ((nMouseY-nDblClkH) <= pChild->ImplGetFrameData()->mnFirstMouseY) &&
+                     ((nMouseY+nDblClkH) >= pChild->ImplGetFrameData()->mnFirstMouseY) )
+                {
+                    pChild->ImplGetFrameData()->mnClickCount++;
+                    pChild->ImplGetFrameData()->mbStartDragCalled  = true;
+                }
+                else
+                {
+                    pChild->ImplGetFrameData()->mpMouseDownWin     = pChild;
+                    pChild->ImplGetFrameData()->mnClickCount       = 1;
+                    pChild->ImplGetFrameData()->mnFirstMouseX      = nMouseX;
+                    pChild->ImplGetFrameData()->mnFirstMouseY      = nMouseY;
+                    pChild->ImplGetFrameData()->mnFirstMouseCode   = nCode;
+                    pChild->ImplGetFrameData()->mbStartDragCalled  = !((nCode & (MOUSE_LEFT | MOUSE_RIGHT | MOUSE_MIDDLE)) ==
+                                                                (rMSettings.GetStartDragCode() & (MOUSE_LEFT | MOUSE_RIGHT | MOUSE_MIDDLE)));
+                }
+                pChild->ImplGetFrameData()->mnMouseDownTime = nMsgTime;
             }
-            pChild->ImplGetFrameData()->mnMouseDownTime = nMsgTime;
+            nClicks = pChild->ImplGetFrameData()->mnClickCount;
         }
-        nClicks = pChild->ImplGetFrameData()->mnClickCount;
 
         pSVData->maAppData.mnLastInputTime = Time::GetSystemTicks();
     }
 
     DBG_ASSERT( pChild, "ImplHandleMouseEvent: pChild == NULL" );
 
+    if (!pChild)
+        return false;
+
     // create mouse event
     Point aChildPos = pChild->ImplFrameToOutput( aMousePos );
     MouseEvent aMEvt( aChildPos, nClicks, nMode, nCode, nCode );
@@ -668,6 +673,9 @@ bool ImplHandleMouseEvent( Window* pWindow, sal_uInt16 nSVEvent, bool bMouseLeav
     bool bCallHelpRequest = true;
     DBG_ASSERT( pChild, "ImplHandleMouseEvent: pChild is NULL" );
 
+    if (!pChild)
+        return false;
+
     ImplDelData aDelData;
     NotifyEvent aNEvt( nSVEvent, pChild, &aMEvt );
     pChild->ImplAddDel( &aDelData );
@@ -685,10 +693,10 @@ bool ImplHandleMouseEvent( Window* pWindow, sal_uInt16 nSVEvent, bool bMouseLeav
     }
 
     if ( ImplCallPreNotify( aNEvt ) || aDelData.IsDead() )
-        nRet = true;
+        bRet = true;
     else
     {
-        nRet = false;
+        bRet = false;
         if ( nSVEvent == EVENT_MOUSEMOVE )
         {
             if ( pSVData->maWinData.mpTrackWin )
@@ -703,7 +711,7 @@ bool ImplHandleMouseEvent( Window* pWindow, sal_uInt16 nSVEvent, bool bMouseLeav
                         pSVData->maWinData.mpTrackTimer->Start();
                 }
                 bCallHelpRequest = false;
-                nRet = true;
+                bRet = true;
             }
             else
             {
@@ -730,7 +738,7 @@ bool ImplHandleMouseEvent( Window* pWindow, sal_uInt16 nSVEvent, bool bMouseLeav
         {
             if ( pSVData->maWinData.mpTrackWin &&
                  !(pSVData->maWinData.mnTrackFlags & STARTTRACK_MOUSEBUTTONDOWN) )
-                nRet = true;
+                bRet = true;
             else
             {
                 pChild->ImplGetWindowImpl()->mbMouseButtonDown = false;
@@ -742,7 +750,7 @@ bool ImplHandleMouseEvent( Window* pWindow, sal_uInt16 nSVEvent, bool bMouseLeav
             if ( pSVData->maWinData.mpTrackWin )
             {
                 pChild->EndTracking();
-                nRet = true;
+                bRet = true;
             }
             else
             {
@@ -767,19 +775,19 @@ bool ImplHandleMouseEvent( Window* pWindow, sal_uInt16 nSVEvent, bool bMouseLeav
     {
         if ( bCallHelpRequest && !pSVData->maHelpData.mbKeyboardHelp )
             ImplHandleMouseHelpRequest( pChild, pChild->OutputToScreenPixel( aMEvt.GetPosPixel() ) );
-        nRet = true;
+        bRet = true;
     }
-    else if ( !nRet )
+    else if ( !bRet )
     {
         if ( nSVEvent == EVENT_MOUSEBUTTONDOWN )
         {
             if ( !pChild->ImplGetWindowImpl()->mbMouseButtonDown )
-                nRet = true;
+                bRet = true;
         }
         else
         {
             if ( !pChild->ImplGetWindowImpl()->mbMouseButtonUp )
-                nRet = true;
+                bRet = true;
         }
     }
 
@@ -796,14 +804,14 @@ bool ImplHandleMouseEvent( Window* pWindow, sal_uInt16 nSVEvent, bool bMouseLeav
         if ( !bDrag )
         {
             // Command-Events
-            if ( /*!nRet &&*/ (nClicks == 1) && (nSVEvent == EVENT_MOUSEBUTTONDOWN) &&
+            if ( /*!bRet &&*/ (nClicks == 1) && (nSVEvent == EVENT_MOUSEBUTTONDOWN) &&
                  (nCode == MOUSE_MIDDLE) )
             {
                 sal_uInt16 nMiddleAction = pChild->GetSettings().GetMouseSettings().GetMiddleButtonAction();
                 if ( nMiddleAction == MOUSE_MIDDLE_AUTOSCROLL )
-                    nRet = !ImplCallCommand( pChild, COMMAND_STARTAUTOSCROLL, NULL, true, &aChildPos );
+                    bRet = !ImplCallCommand( pChild, COMMAND_STARTAUTOSCROLL, NULL, true, &aChildPos );
                 else if ( nMiddleAction == MOUSE_MIDDLE_PASTESELECTION )
-                    nRet = !ImplCallCommand( pChild, COMMAND_PASTESELECTION, NULL, true, &aChildPos );
+                    bRet = !ImplCallCommand( pChild, COMMAND_PASTESELECTION, NULL, true, &aChildPos );
             }
             else
             {
@@ -836,14 +844,14 @@ bool ImplHandleMouseEvent( Window* pWindow, sal_uInt16 nSVEvent, bool bMouseLeav
                             Application::PostUserEvent( Link( pEv, ContextMenuEventLink ) );
                         }
                         else
-                            nRet = ! ImplCallCommand( pChild, COMMAND_CONTEXTMENU, NULL, true, &aChildPos );
+                            bRet = ! ImplCallCommand( pChild, COMMAND_CONTEXTMENU, NULL, true, &aChildPos );
                     }
                 }
             }
         }
     }
 
-    return nRet;
+    return bRet;
 }
 
 // -----------------------------------------------------------------------


More information about the Libreoffice-commits mailing list