Merge "Fix Signature#getInstance."
diff --git a/luni/src/main/java/java/security/Signature.java b/luni/src/main/java/java/security/Signature.java
index 0372c33..2d996b9 100644
--- a/luni/src/main/java/java/security/Signature.java
+++ b/luni/src/main/java/java/security/Signature.java
@@ -589,9 +589,8 @@
      */
     private static class SignatureImpl extends Signature {
 
-        private SignatureSpi spiImpl;
+        private final SignatureSpi spiImpl;
 
-        // Constructor
         public SignatureImpl(SignatureSpi signatureSpi, Provider provider,
                 String algorithm) {
             super(algorithm);
@@ -599,60 +598,57 @@
             spiImpl = signatureSpi;
         }
 
-        // engineSign() implementation
         @Override
         protected byte[] engineSign() throws SignatureException {
             return spiImpl.engineSign();
         }
 
-        //  engineUpdate() implementation
         @Override
         protected void engineUpdate(byte arg0) throws SignatureException {
             spiImpl.engineUpdate(arg0);
         }
 
-        // engineVerify() implementation
         @Override
         protected boolean engineVerify(byte[] arg0) throws SignatureException {
             return spiImpl.engineVerify(arg0);
         }
 
-        // engineUpdate() implementation
         @Override
         protected void engineUpdate(byte[] arg0, int arg1, int arg2)
                 throws SignatureException {
             spiImpl.engineUpdate(arg0, arg1, arg2);
         }
 
-        // engineInitSign() implementation
         @Override
         protected void engineInitSign(PrivateKey arg0)
                 throws InvalidKeyException {
             spiImpl.engineInitSign(arg0);
         }
 
-        // engineInitVerify() implementation
         @Override
         protected void engineInitVerify(PublicKey arg0)
                 throws InvalidKeyException {
             spiImpl.engineInitVerify(arg0);
         }
 
-        // engineGetParameter() implementation
         @Override
         protected Object engineGetParameter(String arg0)
                 throws InvalidParameterException {
             return spiImpl.engineGetParameter(arg0);
         }
 
-        // engineSetParameter() implementation
         @Override
         protected void engineSetParameter(String arg0, Object arg1)
                 throws InvalidParameterException {
             spiImpl.engineSetParameter(arg0, arg1);
         }
 
-        // Returns a clone if the spiImpl is cloneable
+        @Override
+        protected void engineSetParameter(AlgorithmParameterSpec arg0)
+                throws InvalidAlgorithmParameterException {
+            spiImpl.engineSetParameter(arg0);
+        }
+
         @Override
         public Object clone() throws CloneNotSupportedException {
             if (spiImpl instanceof Cloneable) {