aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/security/MessageDigest.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/security/MessageDigest.java')
-rw-r--r--libjava/java/security/MessageDigest.java12
1 files changed, 11 insertions, 1 deletions
diff --git a/libjava/java/security/MessageDigest.java b/libjava/java/security/MessageDigest.java
index cbf0e07..47b082a 100644
--- a/libjava/java/security/MessageDigest.java
+++ b/libjava/java/security/MessageDigest.java
@@ -37,6 +37,8 @@ exception statement from your version. */
package java.security;
+import gnu.java.security.Engine;
+
/**
* <p>This <code>MessageDigest</code> class provides applications the
* functionality of a message digest algorithm, such as <i>MD5</i> or <i>SHA</i>.
@@ -197,7 +199,15 @@ public abstract class MessageDigest extends MessageDigestSpi
throw new IllegalArgumentException("Illegal provider");
MessageDigest result = null;
- Object o = Engine.getInstance(MESSAGE_DIGEST, algorithm, provider);
+ Object o = null;
+ try
+ {
+ o = Engine.getInstance(MESSAGE_DIGEST, algorithm, provider);
+ }
+ catch (java.lang.reflect.InvocationTargetException ite)
+ {
+ throw new NoSuchAlgorithmException(algorithm);
+ }
if (o instanceof MessageDigestSpi)
{