Add pem_free() to other error paths in pk_parse_public_key()

Signed-off-by: Paul Elliott <paul.elliott@arm.com>
diff --git a/library/pkparse.c b/library/pkparse.c
index bb5824f..11afd0b 100644
--- a/library/pkparse.c
+++ b/library/pkparse.c
@@ -1453,10 +1453,14 @@
     if( ret == 0 )
     {
         p = pem.buf;
-        if( ( pk_info = mbedtls_pk_info_from_type( MBEDTLS_PK_RSA ) ) == NULL )
+        if( ( pk_info = mbedtls_pk_info_from_type( MBEDTLS_PK_RSA )) == NULL )
+        {
+            mbedtls_pem_free( &pem );
             return( MBEDTLS_ERR_PK_UNKNOWN_PK_ALG );
+        }
 
-        if( ( ret = mbedtls_pk_setup( ctx, pk_info ) ) != 0 ) {
+        if( ( ret = mbedtls_pk_setup( ctx, pk_info ) ) != 0 )
+        {
             mbedtls_pem_free( &pem );
             return( ret );
         }