Index: Source/core/svg/animation/SMILTime.cpp |
diff --git a/Source/core/svg/animation/SMILTime.cpp b/Source/core/svg/animation/SMILTime.cpp |
index 7abef296001dca9191d29faf4697b6411346878d..674c18d857ed6a443b047e4ce82a8441e351cc39 100644 |
--- a/Source/core/svg/animation/SMILTime.cpp |
+++ b/Source/core/svg/animation/SMILTime.cpp |
@@ -31,31 +31,10 @@ |
using namespace blink; |
-SMILTime blink::operator+(const SMILTime& a, const SMILTime& b) |
-{ |
- if (a.isUnresolved() || b.isUnresolved()) |
- return SMILTime::unresolved(); |
- if (a.isIndefinite() || b.isIndefinite()) |
- return SMILTime::indefinite(); |
- return a.value() + b.value(); |
-} |
- |
-SMILTime blink::operator-(const SMILTime& a, const SMILTime& b) |
-{ |
- if (a.isUnresolved() || b.isUnresolved()) |
- return SMILTime::unresolved(); |
- if (a.isIndefinite() || b.isIndefinite()) |
- return SMILTime::indefinite(); |
- return a.value() - b.value(); |
-} |
- |
SMILTime blink::operator*(const SMILTime& a, const SMILTime& b) |
{ |
- if (a.isUnresolved() || b.isUnresolved()) |
- return SMILTime::unresolved(); |
- if (!a.value() || !b.value()) |
+ // Equal operators have to be used instead of negation here to make NaN work as well. |
+ if (a.value() == 0 || b.value() == 0) |
return SMILTime(0); |
- if (a.isIndefinite() || b.isIndefinite()) |
- return SMILTime::indefinite(); |
return a.value() * b.value(); |
} |