From a2b53fece14f745853bcfe1a300c3dceb580e148 Mon Sep 17 00:00:00 2001 From: Tomaž Vajngerl Date: Wed, 4 Apr 2018 17:51:26 +0900 Subject: vcl: Add a internal (memory) manager for Graphic objects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This adds vcl::graphic::Manager which is a manager singleton that tracks all the creation fo graphic objects and swaps them out on a time and allocation basis. Time based - every number of seconds it looks for Graphics that weren't used for a time. Allocation based - when creating a new Graphic and the total of Graphic uses more than the total amount of memory for Graphics defined in configuration, it tries to release the Graphics that weren't used for a time. Change-Id: I5dbf74db4a6455d32c4abcbad7be21c7f0534642 Reviewed-on: https://gerrit.libreoffice.org/52396 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl --- compilerplugins/clang/badstatics.cxx | 1 + 1 file changed, 1 insertion(+) (limited to 'compilerplugins/clang') diff --git a/compilerplugins/clang/badstatics.cxx b/compilerplugins/clang/badstatics.cxx index 697a50c8f9b0..d91f3b430a30 100644 --- a/compilerplugins/clang/badstatics.cxx +++ b/compilerplugins/clang/badstatics.cxx @@ -199,6 +199,7 @@ public: || (loplugin::DeclCheck(pVarDecl).Var("aAllListeners") .Class("ScAddInListener").GlobalNamespace()) // not owning || name == "s_pLOKWindowsMap" // LOK only, guarded by assert, and LOK never tries to perform a VCL cleanup + || name == "gStaticManager" // vcl/source/graphic/Manager.cxx - stores non-owning pointers ) // these variables appear unproblematic { return true; -- cgit v1.2.3