Merge branch 'mbedtls-2.16' into baremetal-2.16-20190909

* mbedtls-2.16: (28 commits)
  Bump version to Mbed TLS 2.16.3
  Changelog entry
  Check for zero length and NULL buffer pointer
  ssl-opt.sh: wait for proxy to start before running the script further
  Fix uninitialized variable in x509_crt
  HMAC DRBG: Split entropy-gathering requests to reduce request sizes
  Fix the license header of hkdf
  Add a change log entry
  Add a test for mlaformed ECJPAKE context
  Fix handling of md failure
  Add a test for signing content with a long ECDSA key
  Add documentation notes about the required size of the signature buffers
  Add missing MBEDTLS_ECP_C dependencies in check_config.h
  Change size of preallocated buffer for pk_sign() calls
  Adapt ChangeLog
  Fix mpi_bigendian_to_host() on bigendian systems
  Add ChangeLog entry for new function
  Add ChangeLog entry
  Correct deterministic ECDSA behavior
  Add warning for alternative ECDSA implementations
  ...
diff --git a/library/x509_crt.c b/library/x509_crt.c
index 0089ef2..89fea41 100644
--- a/library/x509_crt.c
+++ b/library/x509_crt.c
@@ -3071,15 +3071,13 @@
             continue;
         }
 
+        *r_parent = parent_crt;
+        *r_signature_is_good = signature_is_good;
+
         break;
     }
 
-    if( parent_crt != NULL )
-    {
-        *r_parent = parent_crt;
-        *r_signature_is_good = signature_is_good;
-    }
-    else
+    if( parent_crt == NULL )
     {
 #if defined(MBEDTLS_HAVE_TIME_DATE)
         *r_parent = fallback_parent;