Index: Source/modules/vibration/NavigatorVibration.cpp |
diff --git a/Source/modules/vibration/NavigatorVibration.cpp b/Source/modules/vibration/NavigatorVibration.cpp |
index 05ff456debd2367b505d37ca5edcd887586c4229..987f48c2dd5e0343407916d044036ea680ea334a 100644 |
--- a/Source/modules/vibration/NavigatorVibration.cpp |
+++ b/Source/modules/vibration/NavigatorVibration.cpp |
@@ -85,6 +85,7 @@ bool NavigatorVibration::vibrate(const VibrationPattern& pattern) |
} |
m_timerStart.startOneShot(0); |
+ m_isVibrating = true; |
return true; |
} |
@@ -103,7 +104,6 @@ void NavigatorVibration::timerStartFired(Timer<NavigatorVibration>* timer) |
ASSERT_UNUSED(timer, timer == &m_timerStart); |
if (m_pattern.size()) { |
- m_isVibrating = true; |
WebKit::Platform::current()->vibrate(m_pattern[0]); |
m_timerStop.startOneShot(m_pattern[0] / 1000.0); |
m_pattern.remove(0); |
@@ -114,7 +114,8 @@ void NavigatorVibration::timerStopFired(Timer<NavigatorVibration>* timer) |
{ |
ASSERT_UNUSED(timer, timer == &m_timerStop); |
- m_isVibrating = false; |
+ if (!m_pattern.size()) |
+ m_isVibrating = false; |
if (m_pattern.size()) { |
m_timerStart.startOneShot(m_pattern[0] / 1000.0); |