diff options
author | Michael Meeks <michael.meeks@collabora.com> | 2017-12-15 14:22:10 +0000 |
---|---|---|
committer | pranavk <pranavk@collabora.co.uk> | 2017-12-15 21:06:07 +0100 |
commit | d93718ff92e485ebcd014713574be596b8815ff8 (patch) | |
tree | df5f5d135e3fb721a59c2ae8ce3b949d8f715ccc /cui/source | |
parent | cf54640727c9b58856e9abf15c0ac82d876262b6 (diff) |
Handle resmgr lifecycle with vcl's de-init more cleanly.
Change-Id: Iee5f54edc09d0df7062ffdcb301876fcec791373
Reviewed-on: https://gerrit.libreoffice.org/46562
Reviewed-by: pranavk <pranavk@collabora.co.uk>
Tested-by: pranavk <pranavk@collabora.co.uk>
Diffstat (limited to 'cui/source')
-rw-r--r-- | cui/source/factory/cuiresmgr.cxx | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/cui/source/factory/cuiresmgr.cxx b/cui/source/factory/cuiresmgr.cxx index e61da43b6710..48e942a90685 100644 --- a/cui/source/factory/cuiresmgr.cxx +++ b/cui/source/factory/cuiresmgr.cxx @@ -21,15 +21,16 @@ #include <svl/solar.hrc> #include <vcl/svapp.hxx> #include <vcl/settings.hxx> +#include <vcl/lazydelete.hxx> // struct DialogsResMgr -------------------------------------------------- ResMgr* CuiResMgr::GetResMgr() { - static std::unique_ptr<ResMgr> pResMgr; + static vcl::DeleteOnDeinit<ResMgr> pResMgr(nullptr); const LanguageTag& rLocale = Application::GetSettings().GetUILanguageTag(); - if (!pResMgr || pResMgr->GetLocale() != rLocale) + if (!pResMgr.get() || pResMgr.get()->GetLocale() != rLocale) { pResMgr.reset(ResMgr::CreateResMgr("cui", rLocale)); } |