sfx2/source/appl/appquit.cxx | 18 +++++++++--------- sfx2/source/dialog/templdlg.cxx | 4 ++-- sfx2/source/doc/objxtor.cxx | 4 ++-- sfx2/source/inc/sfxtypes.hxx | 5 +++-- sfx2/source/inc/virtmenu.hxx | 4 +--- sfx2/source/menu/virtmenu.cxx | 26 +------------------------- 6 files changed, 18 insertions(+), 43 deletions(-)
New commits: commit a8df509ca4e4e77e9ed684d627ee08d84805f534 Author: Stephan Bergmann <[email protected]> Date: Mon Aug 12 16:41:30 2013 +0200 error: dereferencing type-punned pointer will break strict-aliasing rules gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3) Change-Id: Id8f1828ae1dabc2f928d737d4fac8375dd73b5a2 diff --git a/sfx2/source/appl/appquit.cxx b/sfx2/source/appl/appquit.cxx index 7a5daab..b94436a 100644 --- a/sfx2/source/appl/appquit.cxx +++ b/sfx2/source/appl/appquit.cxx @@ -131,15 +131,15 @@ void SfxApplication::Deinitialize() // from here no SvObjects have to exists DELETEZ(pAppData_Impl->pMatcher); - DELETEX(pAppData_Impl->pSlotPool); - DELETEX(pAppData_Impl->pFactArr); - - DELETEX(pAppData_Impl->pTbxCtrlFac); - DELETEX(pAppData_Impl->pStbCtrlFac); - DELETEX(pAppData_Impl->pMenuCtrlFac); - DELETEX(pAppData_Impl->pViewFrames); - DELETEX(pAppData_Impl->pViewShells); - DELETEX(pAppData_Impl->pObjShells); + DELETEX(SfxSlotPool, pAppData_Impl->pSlotPool); + DELETEX(SfxChildWinFactArr_Impl, pAppData_Impl->pFactArr); + + DELETEX(SfxTbxCtrlFactArr_Impl, pAppData_Impl->pTbxCtrlFac); + DELETEX(SfxStbCtrlFactArr_Impl, pAppData_Impl->pStbCtrlFac); + DELETEX(SfxMenuCtrlFactArr_Impl, pAppData_Impl->pMenuCtrlFac); + DELETEX(SfxViewFrameArr_Impl, pAppData_Impl->pViewFrames); + DELETEX(SfxViewShellArr_Impl, pAppData_Impl->pViewShells); + DELETEX(SfxObjectShellArr_Impl, pAppData_Impl->pObjShells); //TODO/CLEANTUP //ReleaseArgs could be used instead! diff --git a/sfx2/source/dialog/templdlg.cxx b/sfx2/source/dialog/templdlg.cxx index 203f200..1dee9ac 100644 --- a/sfx2/source/dialog/templdlg.cxx +++ b/sfx2/source/dialog/templdlg.cxx @@ -1013,10 +1013,10 @@ void SfxCommonTemplateDialog_Impl::ClearResource() void SfxCommonTemplateDialog_Impl::impl_clear() { - DELETEX(pStyleFamilies); + DELETEX(SfxStyleFamilies, pStyleFamilies); sal_uInt16 i; for ( i = 0; i < MAX_FAMILIES; ++i ) - DELETEX(pFamilyState[i]); + DELETEX(SfxTemplateItem, pFamilyState[i]); for ( i = 0; i < COUNT_BOUND_FUNC; ++i ) delete pBoundItems[i]; pCurObjShell = NULL; diff --git a/sfx2/source/doc/objxtor.cxx b/sfx2/source/doc/objxtor.cxx index 2acf6c4..dcb4f1b 100644 --- a/sfx2/source/doc/objxtor.cxx +++ b/sfx2/source/doc/objxtor.cxx @@ -363,7 +363,7 @@ SfxObjectShell::~SfxObjectShell() SfxObjectShell::Close(); pImp->pBaseModel.set( NULL ); - DELETEX(pImp->pReloadTimer ); + DELETEX(AutoReloadTimer_Impl, pImp->pReloadTimer ); SfxApplication *pSfxApp = SFX_APP(); if ( USHRT_MAX != pImp->nVisualDocumentNumber ) @@ -398,7 +398,7 @@ SfxObjectShell::~SfxObjectShell() if ( IsDocShared() ) FreeSharedFile(); #endif - DELETEX( pMedium ); + DELETEX( SfxMedium, pMedium ); } // The removing of the temporary file must be done as the latest step in the document destruction diff --git a/sfx2/source/inc/sfxtypes.hxx b/sfx2/source/inc/sfxtypes.hxx index aa573a0..e12ed3b 100644 --- a/sfx2/source/inc/sfxtypes.hxx +++ b/sfx2/source/inc/sfxtypes.hxx @@ -34,9 +34,10 @@ #ifndef DELETEX #ifdef DBG_UTIL -#define DELETEX(pPtr) ( delete pPtr, (void*&) pPtr = (void*) 0xFFFFFFFF ) +#define DELETEX(T, pPtr) \ + ( delete pPtr, pPtr = reinterpret_cast<T *>(sal_IntPtr(-1)) ) #else -#define DELETEX(pPtr) delete pPtr +#define DELETEX(T, pPtr) delete pPtr #endif #endif commit f91d4f156b4fdb6e6a8a755714fd384bfa275e3d Author: Stephan Bergmann <[email protected]> Date: Mon Aug 12 16:34:42 2013 +0200 Unused pAutoDeactivate, is never non-null ...and was like that already in fd069bee7e57ad529c3c0974559fd2d84ec3151a "initial import." TODO: Menu::Highlight in vcl/source/window/menu.cxx makes it look like the now almost empty IMPL_LINK_NOARG(SfxVirtualMenu,Highlight) returning sal_True makes a difference compared to having no handler set (in which case aHighlightHdl.Call returns 0), so I left it in; but that may just be overcautious and the handler could really go for good. Change-Id: I0cb28ddb1a5f747000b5749ed080502ae83c5575 diff --git a/sfx2/source/inc/virtmenu.hxx b/sfx2/source/inc/virtmenu.hxx index 10e971d..0bf4152 100644 --- a/sfx2/source/inc/virtmenu.hxx +++ b/sfx2/source/inc/virtmenu.hxx @@ -24,7 +24,6 @@ #include <sfx2/mnuitem.hxx> class SfxBindings; -class Timer; class SfxMenuImageControl_Impl; typedef ::boost::ptr_vector<SfxMenuControl> SfxMenuCtrlArr_Impl; @@ -44,7 +43,6 @@ private: PopupMenu* pWindowMenu; PopupMenu* pPickMenu; PopupMenu* pAddonsMenu; - Timer* pAutoDeactivate; // Hack for QAP-Bug sal_uInt16 nVisibleItems; sal_uInt16 nId; sal_uInt16 nCount; @@ -71,7 +69,7 @@ protected: SfxBindings &rBind, sal_Bool bOLEServer=sal_False, sal_Bool bRes=sal_False, sal_Bool bIsAddonMenu=sal_False ); void CreateFromSVMenu(); - DECL_LINK( Highlight, Menu * ); + DECL_LINK( Highlight, void * ); DECL_LINK( Activate, Menu * ); DECL_LINK( Deactivate, Menu * ); DECL_LINK( SettingsChanged, void* ); diff --git a/sfx2/source/menu/virtmenu.cxx b/sfx2/source/menu/virtmenu.cxx index 005a140..d58fc65 100644 --- a/sfx2/source/menu/virtmenu.cxx +++ b/sfx2/source/menu/virtmenu.cxx @@ -174,7 +174,6 @@ SfxVirtualMenu::SfxVirtualMenu( sal_uInt16 nOwnId, pImageControl(0), pBindings(&rBindings), pResMgr(0), - pAutoDeactivate(0), nLocks(0), bHelpInitialized( bWithHelp ), bIsAddonPopupMenu( bIsAddonMenu ) @@ -208,7 +207,6 @@ SfxVirtualMenu::SfxVirtualMenu( Menu *pStarViewMenu, sal_Bool bWithHelp, pImageControl(0), pBindings(&rBindings), pResMgr(0), - pAutoDeactivate(0), nLocks(0), bHelpInitialized( bWithHelp ), bIsAddonPopupMenu( bIsAddonMenu ) @@ -252,14 +250,6 @@ SfxVirtualMenu::~SfxVirtualMenu() pBindings->LEAVEREGISTRATIONS(); --nLocks; bIsActive = sal_False; } - // QAP-Hack - if ( pAutoDeactivate ) - { - if ( pAutoDeactivate->IsActive() ) - Deactivate(0); - DELETEX(pAutoDeactivate); - } - if (pItems) { delete [] pItems; @@ -502,18 +492,10 @@ void SfxVirtualMenu::CreateFromSVMenu() // called on activation of the SV-Menu -IMPL_LINK( SfxVirtualMenu, Highlight, Menu *, pMenu ) +IMPL_LINK_NOARG( SfxVirtualMenu, Highlight ) { DBG_CHKTHIS(SfxVirtualMenu, 0); - // own StarView-Menu - if ( pMenu == pSVMenu ) - { - // AutoDeactivate is not necessary anymore - if ( pAutoDeactivate ) - pAutoDeactivate->Stop(); - } - return sal_True; } @@ -920,9 +902,6 @@ IMPL_LINK( SfxVirtualMenu, Activate, Menu *, pMenu ) // Supress the Status updates until Deactivate pBindings->ENTERREGISTRATIONS(); ++nLocks; bIsActive = sal_True; - if ( pAutoDeactivate ) // QAP-Hack - pAutoDeactivate->Start(); - return sal_True; } else @@ -945,9 +924,6 @@ IMPL_LINK( SfxVirtualMenu, Deactivate, Menu *, pMenu ) DBG_OUTF( ("SfxVirtualMenu %lx deactivated %lx, own %lx", this, pMenu, pSVMenu) ); if ( bIsActive && ( 0 == pMenu || pMenu == pSVMenu ) ) { - if ( pAutoDeactivate ) - pAutoDeactivate->Stop(); - // All controllers can be unbinded all the way up to the Menubar, // when the menu is disabled (= closed) if ( pParent ) _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
