Index: cc/base/util.h |
diff --git a/cc/base/util.h b/cc/base/util.h |
index b5a58c76b3b1199a4b9ebc0ce0bacc5a5dc78e36..95b020967b0413c3510a085bd28d06f178ffd738 100644 |
--- a/cc/base/util.h |
+++ b/cc/base/util.h |
@@ -8,7 +8,13 @@ |
namespace cc { |
template <typename T> T RoundUp(T n, T mul) { |
- return ((n + mul - 1) / mul) * mul; |
+ return (n < 0) ? (n / mul) * mul |
+ : ((n + mul - 1) / mul) * mul; |
+} |
+ |
+template <typename T> T RoundDown(T n, T mul) { |
+ return (n < 0) ? ((n - mul + 1) / mul) * mul |
+ : (n / mul) * mul; |
} |
} // namespace cc |