diff options
Diffstat (limited to 'libjava/java/security/MessageDigest.java')
-rw-r--r-- | libjava/java/security/MessageDigest.java | 12 |
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) { |