pkcs12: fix dropped error

This fixes a dropped error in Decode().

Change-Id: Iae5cac72f63a80dd5230034a3cfe1d6e76cc3415
Reviewed-on: https://go-review.googlesource.com/c/crypto/+/205421
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
diff --git a/pkcs12/pkcs12.go b/pkcs12/pkcs12.go
index 55f7691..3e2ce69 100644
--- a/pkcs12/pkcs12.go
+++ b/pkcs12/pkcs12.go
@@ -252,6 +252,7 @@
 		case bag.Id.Equal(oidPKCS8ShroundedKeyBag):
 			if privateKey != nil {
 				err = errors.New("pkcs12: expected exactly one key bag")
+				return nil, nil, err
 			}
 
 			if privateKey, err = decodePkcs8ShroudedKeyBag(bag.Value.Bytes, encodedPassword); err != nil {