From f7d666de2243ea8094d49f05f20111a6ffc71565 Mon Sep 17 00:00:00 2001
From: lutoff <lutoff@localhost>
Date: Tue, 20 Nov 2007 10:28:11 +0000
Subject: [PATCH] Fix for issue #1902 (dsconfig set-backend-prop doesn't check max value)
---
opends/src/server/org/opends/server/admin/SizeUnit.java | 13 +++++++++++--
1 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/opends/src/server/org/opends/server/admin/SizeUnit.java b/opends/src/server/org/opends/server/admin/SizeUnit.java
index 8f58bbf..8060989 100644
--- a/opends/src/server/org/opends/server/admin/SizeUnit.java
+++ b/opends/src/server/org/opends/server/admin/SizeUnit.java
@@ -365,9 +365,18 @@
* @param amount
* The size as a quantity of this unit.
* @return Returns the number of bytes that the size represents.
+ *
+ * @throws NumberFormatException
+ * If the provided size exceeded long.MAX_VALUE.
*/
- public long toBytes(double amount) {
- return (long) (sz * amount);
+ public long toBytes(double amount) throws NumberFormatException {
+ double value = sz * amount;
+ if (value > Long.MAX_VALUE)
+ {
+ throw new NumberFormatException
+ ("number too big (exceeded long.MAX_VALUE");
+ }
+ return (long) (value);
}
--
Gitblit v1.10.0