Changeset 151268 in webkit
- Timestamp:
- Jun 6, 2013 6:52:45 AM (11 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r151267 r151268 1 2013-06-06 Gwang Yoon Hwang <ryumiel@company100.net> 2 3 Cannot set a new timer inside of timer callback in RunLoopTimerGtk & RunLoopTimerEFL 4 https://bugs.webkit.org/show_bug.cgi?id=117224 5 6 Reviewed by Christophe Dumez. 7 8 RunLoopTimer should clear its isActive flag before invoking timer 9 callback. 10 11 * platform/efl/RunLoopEfl.cpp: 12 (WebCore::RunLoop::TimerBase::timerFired): 13 * platform/gtk/RunLoopGtk.cpp: 14 (WebCore::RunLoop::TimerBase::timerFiredCallback): 15 1 16 2013-06-06 Diego Pino Garcia <dpino@igalia.com> 2 17 -
trunk/Source/WebCore/platform/efl/RunLoopEfl.cpp
r149358 r151268 101 101 RunLoop::TimerBase* timer = static_cast<RunLoop::TimerBase*>(data); 102 102 103 if (!timer->m_isRepeating) 104 timer->m_timer = 0; 105 103 106 timer->fired(); 104 107 105 if (!timer->m_isRepeating) { 106 timer->m_timer = 0; 107 return ECORE_CALLBACK_CANCEL; 108 } 109 110 return ECORE_CALLBACK_RENEW; 108 return timer->m_isRepeating ? ECORE_CALLBACK_RENEW : ECORE_CALLBACK_CANCEL; 111 109 } 112 110 -
trunk/Source/WebCore/platform/gtk/RunLoopGtk.cpp
r149358 r151268 137 137 bool isRepeating = timer->isRepeating(); 138 138 // This can change the timerSource by starting a new timer within the callback. 139 timer->fired();140 139 if (!isRepeating && currentTimerSource == timer->m_timerSource.get()) 141 140 timer->clearTimerSource(); 141 142 timer->fired(); 142 143 return isRepeating; 143 144 }
Note: See TracChangeset
for help on using the changeset viewer.