From 87c15508d38be7b4370330b926ea3217a3e53cbf Mon Sep 17 00:00:00 2001 From: Joogab Yun Date: Fri, 10 Jan 2020 00:07:47 +0900 Subject: [PATCH] [Tizen] HOT Fix : IdleEnterer Change-Id: I84edbddbd48a7039f9f414a703a5aeafb0f09988 --- dali/internal/adaptor/common/adaptor-impl.cpp | 10 +++++++++- dali/internal/adaptor/common/adaptor-impl.h | 1 + 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/dali/internal/adaptor/common/adaptor-impl.cpp b/dali/internal/adaptor/common/adaptor-impl.cpp index 6049e0e..f3bdf48 100755 --- a/dali/internal/adaptor/common/adaptor-impl.cpp +++ b/dali/internal/adaptor/common/adaptor-impl.cpp @@ -917,6 +917,12 @@ void Adaptor::RequestProcessEventsOnIdle( bool forceProcess ) if( ( ! mNotificationOnIdleInstalled ) && ( RUNNING == mState || READY == mState || forceProcess ) ) { mNotificationOnIdleInstalled = AddIdleEnterer( MakeCallback( this, &Adaptor::ProcessCoreEventsFromIdle ), forceProcess ); + mNotificationOnIdleInstalledCnt++; + if( RUNNING == mState ) + { + DALI_LOG_ERROR("gab_test mNotificationOnIdleInstalledCnt %d ", mNotificationOnIdleInstalledCnt); + mNotificationOnIdleInstalled = false; + } } } @@ -1079,6 +1085,7 @@ bool Adaptor::ProcessCoreEventsFromIdle() // the idle handle automatically un-installs itself mNotificationOnIdleInstalled = false; + mNotificationOnIdleInstalledCnt--; return false; } @@ -1154,7 +1161,8 @@ Adaptor::Adaptor(Dali::Integration::SceneHolder window, Dali::Adaptor& adaptor, mObjectProfiler( nullptr ), mSocketFactory(), mEnvironmentOptionsOwned( environmentOptions ? false : true /* If not provided then we own the object */ ), - mUseRemoteSurface( false ) + mUseRemoteSurface( false ), + mNotificationOnIdleInstalledCnt( 0 ) { DALI_ASSERT_ALWAYS( !IsAvailable() && "Cannot create more than one Adaptor per thread" ); mWindows.insert( mWindows.begin(), &Dali::GetImplementation( window ) ); diff --git a/dali/internal/adaptor/common/adaptor-impl.h b/dali/internal/adaptor/common/adaptor-impl.h index c151865..193c90f 100755 --- a/dali/internal/adaptor/common/adaptor-impl.h +++ b/dali/internal/adaptor/common/adaptor-impl.h @@ -675,6 +675,7 @@ private: // Data SocketFactory mSocketFactory; ///< Socket factory const bool mEnvironmentOptionsOwned:1; ///< Whether we own the EnvironmentOptions (and thus, need to delete it) bool mUseRemoteSurface; ///< whether the remoteSurface is used or not + int mNotificationOnIdleInstalledCnt; public: inline static Adaptor& GetImplementation(Dali::Adaptor& adaptor) { return *adaptor.mImpl; } -- 2.7.4