From 65feac834aa6a9360f18bdddf94bd67c71e807ba Mon Sep 17 00:00:00 2001 From: Juergen Funk Date: Wed, 3 Jun 2015 09:23:44 +0200 Subject: std::list for Scheduler Re-factor the scheduler to use std::list Because - ImplSchedulerData - remove: mbInScheduler, mnUpdateTime, mnUpdateStack that is scheduler stuff - this struct is only a container for the scheduler-list - UpdateMinPeriod - the scheduler is the pure-virtual-class then the idle-class must override this method - ImplDeInitScheduler(bool All=true) - this patch 2e29a518b04250b5f9cc9d0d77da3df076834d60 remove all scheduler tasks and the scheduler, but after that, the scheduler is using, then crash. With this fix, only delete the scheduler-list, but not the scheduler The next steps - split the scheduler from the scheduler-list-handling the scheduler-list-handling need a static class - remove the scheduler from the timer-handling staff Change-Id: I8d4d4f27b2bc9684a48c2afafd0b3edd0716c71d Reviewed-on: https://gerrit.libreoffice.org/16148 Reviewed-by: Thorsten Behrens Tested-by: Thorsten Behrens (cherry picked from commit 1289d3c42af66990a2c8e5a7a38e51b6cd51c7eb) --- sfx2/source/appl/appinit.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sfx2') diff --git a/sfx2/source/appl/appinit.cxx b/sfx2/source/appl/appinit.cxx index 28a709f707cd..4a3514c22f0f 100644 --- a/sfx2/source/appl/appinit.cxx +++ b/sfx2/source/appl/appinit.cxx @@ -109,7 +109,7 @@ void SAL_CALL SfxTerminateListener_Impl::notifyTermination( const EventObject& a // Timers may access the SfxApplication and are only deleted in // Application::Quit(), which is asynchronous (PostUserEvent) - disable! - Scheduler::ImplDeInitScheduler(); + Scheduler::ImplDeInitScheduler(false); // false only delete the list SfxApplication* pApp = SfxGetpApp(); pApp->Broadcast( SfxSimpleHint( SFX_HINT_DEINITIALIZING ) ); -- cgit v1.2.3