From 92c5536cd5a3d1854be7fc0c50664aa6e20465d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= Date: Thu, 7 Aug 2014 14:00:44 +0100 Subject: [PATCH] coverity#982278 Resource leak in object Change-Id: I0d0cf666ac8ecd55b4d3ba783b1e17670d6eb566 --- editeng/source/editeng/eerdll.cxx | 10 +++++++++- include/editeng/eerdll.hxx | 3 +-- svx/source/dialog/dialmgr.cxx | 6 ++---- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/editeng/source/editeng/eerdll.cxx b/editeng/source/editeng/eerdll.cxx index ba0821d72e29..af588fcd2c70 100644 --- a/editeng/source/editeng/eerdll.cxx +++ b/editeng/source/editeng/eerdll.cxx @@ -200,7 +200,6 @@ EditResId::EditResId( sal_uInt16 nId ): EditDLL::EditDLL() { pGlobalData = new GlobalEditData; - pResMgr = ResMgr::CreateResMgr( "editeng", Application::GetSettings().GetUILanguageTag() ); } EditDLL::~EditDLL() @@ -208,4 +207,13 @@ EditDLL::~EditDLL() delete pGlobalData; } +static ResMgr* pResMgr=0; + +ResMgr* EditDLL::GetResMgr() +{ + if (!pResMgr) + pResMgr = ResMgr::CreateResMgr("editeng", Application::GetSettings().GetUILanguageTag()); + return pResMgr; +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/include/editeng/eerdll.hxx b/include/editeng/eerdll.hxx index c92e70cd179a..2f7912e7b07c 100644 --- a/include/editeng/eerdll.hxx +++ b/include/editeng/eerdll.hxx @@ -34,14 +34,13 @@ public: class EditDLL { - ResMgr* pResMgr; GlobalEditData* pGlobalData; public: EditDLL(); ~EditDLL(); - ResMgr* GetResMgr() const { return pResMgr; } + static ResMgr* GetResMgr(); GlobalEditData* GetGlobalData() const { return pGlobalData; } static EditDLL& Get(); }; diff --git a/svx/source/dialog/dialmgr.cxx b/svx/source/dialog/dialmgr.cxx index bf9f976e794b..b0d29ca48c57 100644 --- a/svx/source/dialog/dialmgr.cxx +++ b/svx/source/dialog/dialmgr.cxx @@ -24,12 +24,10 @@ static ResMgr* pResMgr=0; -// struct DialogsResMgr -------------------------------------------------- ResMgr* DialogsResMgr::GetResMgr() { - if ( !pResMgr ) - pResMgr = ResMgr::CreateResMgr( "svx", Application::GetSettings().GetUILanguageTag() ); - + if (!pResMgr) + pResMgr = ResMgr::CreateResMgr("svx", Application::GetSettings().GetUILanguageTag()); return pResMgr; }