summaryrefslogtreecommitdiff
path: root/xfa/fwl/cfwl_timer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'xfa/fwl/cfwl_timer.cpp')
-rw-r--r--xfa/fwl/cfwl_timer.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/xfa/fwl/cfwl_timer.cpp b/xfa/fwl/cfwl_timer.cpp
index 2734e49d78..597f928ba0 100644
--- a/xfa/fwl/cfwl_timer.cpp
+++ b/xfa/fwl/cfwl_timer.cpp
@@ -25,11 +25,13 @@ CFWL_TimerInfo* CFWL_Timer::StartTimer(uint32_t dwElapse, bool bImmediately) {
if (!pAdapterNative)
return nullptr;
- IFWL_AdapterTimerMgr* pAdapterTimerMgr = pAdapterNative->GetTimerMgr();
- if (!pAdapterTimerMgr)
+ if (!m_pTimeMgrAdapter)
+ m_pTimeMgrAdapter.reset(pAdapterNative->GetTimerMgr());
+
+ if (!m_pTimeMgrAdapter)
return nullptr;
CFWL_TimerInfo* pTimerInfo = nullptr;
- pAdapterTimerMgr->Start(this, dwElapse, bImmediately, &pTimerInfo);
+ m_pTimeMgrAdapter->Start(this, dwElapse, bImmediately, &pTimerInfo);
return pTimerInfo;
}