@@ -32,7 +32,7 @@ TizenVsyncWaiter::TizenVsyncWaiter(FlutterTizenEngine* engine) {
3232}
3333
3434TizenVsyncWaiter::~TizenVsyncWaiter () {
35- tdm_client_. reset ();
35+ tdm_client_-> OnEngineStop ();
3636
3737 SendMessage (kMessageQuit , 0 );
3838
@@ -130,10 +130,6 @@ TdmClient::TdmClient(FlutterTizenEngine* engine) {
130130}
131131
132132TdmClient::~TdmClient () {
133- {
134- std::lock_guard<std::mutex> lock (engine_mutex_);
135- engine_ = nullptr ;
136- }
137133 if (vblank_) {
138134 tdm_client_vblank_destroy (vblank_);
139135 vblank_ = nullptr ;
@@ -145,6 +141,15 @@ TdmClient::~TdmClient() {
145141 }
146142}
147143
144+ bool TdmClient::IsValid () {
145+ return vblank_ && client_;
146+ }
147+
148+ void TdmClient::OnEngineStop () {
149+ std::lock_guard<std::mutex> lock (engine_mutex_);
150+ engine_ = nullptr ;
151+ }
152+
148153void TdmClient::AwaitVblank (intptr_t baton) {
149154 baton_ = baton;
150155 tdm_error ret = tdm_client_vblank_wait (vblank_, 1 , VblankCallback, this );
@@ -155,10 +160,6 @@ void TdmClient::AwaitVblank(intptr_t baton) {
155160 tdm_client_handle_events (client_);
156161}
157162
158- bool TdmClient::IsValid () {
159- return vblank_ && client_;
160- }
161-
162163void TdmClient::VblankCallback (tdm_client_vblank* vblank,
163164 tdm_error error,
164165 unsigned int sequence,
0 commit comments