Index: Source/modules/battery/BatteryManager.cpp |
diff --git a/Source/modules/battery/BatteryManager.cpp b/Source/modules/battery/BatteryManager.cpp |
index aae81bcf1448b25da6e871ea668cfcd90650432e..3eb3b219f749f2ac41339bd71b4e5cc65bc9c20b 100644 |
--- a/Source/modules/battery/BatteryManager.cpp |
+++ b/Source/modules/battery/BatteryManager.cpp |
@@ -34,9 +34,16 @@ bool BatteryManager::charging() |
double BatteryManager::chargingTime() |
{ |
- if (!m_batteryStatus || !m_batteryStatus->charging()) |
+ if (!m_batteryStatus) |
+ return 0; |
+ |
+ if (!m_batteryStatus->charging()) |
return std::numeric_limits<double>::infinity(); |
+ // The spec requires that if level == 1.0, chargingTime == 0 but this has to |
+ // be implement by the backend. Adding this assert will help enforcing it. |
+ ASSERT(level() != 1.0 && m_batteryStatus->chargingTime() == 0.0); |
+ |
return m_batteryStatus->chargingTime(); |
} |