diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2021-05-07 22:06:14 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2021-05-08 17:36:54 +0200 |
commit | 1545949690c750d7b512000723b564e69cf3c3a6 (patch) | |
tree | 1463c8b2912a9e269fe8b7ef3f7326dc85173830 /sc/inc | |
parent | c10ce2698a3b001d22db3d33f2f43513cc49ebda (diff) |
ref-count SfxItemPool
so we can remove SfxItemPoolUser, which is a right
performance hog when we have large calc spreadsheets
Change-Id: I344002f536f6eead5cf98c6647dd1667fd9c8874
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115247
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'sc/inc')
-rw-r--r-- | sc/inc/docpool.hxx | 2 | ||||
-rw-r--r-- | sc/inc/editutil.hxx | 2 | ||||
-rw-r--r-- | sc/inc/scmod.hxx | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/sc/inc/docpool.hxx b/sc/inc/docpool.hxx index 3622aa38a68e..9280fb3602b0 100644 --- a/sc/inc/docpool.hxx +++ b/sc/inc/docpool.hxx @@ -37,7 +37,7 @@ private: virtual ~ScDocumentPool() override; public: - virtual SfxItemPool* Clone() const override; + virtual rtl::Reference<SfxItemPool> Clone() const override; virtual MapUnit GetMetric( sal_uInt16 nWhich ) const override; void StyleDeleted( const ScStyleSheet* pStyle ); // delete templates(?) in organizer diff --git a/sc/inc/editutil.hxx b/sc/inc/editutil.hxx index 53664009b428..efec08dfdbc5 100644 --- a/sc/inc/editutil.hxx +++ b/sc/inc/editutil.hxx @@ -108,7 +108,7 @@ public: class ScEnginePoolHelper { protected: - SfxItemPool* pEnginePool; + rtl::Reference<SfxItemPool> pEnginePool; SfxItemSet* pDefaults; bool bDeleteEnginePool; bool bDeleteDefaults; diff --git a/sc/inc/scmod.hxx b/sc/inc/scmod.hxx index 6847142a09a9..8f2a1b34ea8f 100644 --- a/sc/inc/scmod.hxx +++ b/sc/inc/scmod.hxx @@ -82,7 +82,7 @@ class SAL_DLLPUBLIC_RTTI ScModule final : public SfxModule, public SfxListener, Timer m_aIdleTimer; std::unique_ptr<ScDragData> m_pDragData; ScSelectionTransferObj* m_pSelTransfer; - std::unique_ptr<ScMessagePool, SfxItemPoolDeleter> m_pMessagePool; + rtl::Reference<ScMessagePool> m_pMessagePool; // there is no global InputHandler anymore, each View has its own ScInputHandler* m_pRefInputHandler; std::unique_ptr<ScViewCfg, o3tl::default_delete<ScViewCfg>> m_pViewCfg; |