@@ -1112,32 +1112,32 @@ int wc_DsaVerify_ex(const byte* digest, word32 digestSz, const byte* sig,
11121112
11131113#ifdef WOLFSSL_SMALL_STACK
11141114 if (s ) {
1115- if (ret != WC_NO_ERR_TRACE (MP_INIT_E ))
1115+ if (ret != WC_NO_ERR_TRACE (MP_INIT_E ) && ret != WC_NO_ERR_TRACE ( MEMORY_E ) )
11161116 mp_clear (s );
11171117 XFREE (s , key -> heap , DYNAMIC_TYPE_TMP_BUFFER );
11181118 }
11191119 if (r ) {
1120- if (ret != WC_NO_ERR_TRACE (MP_INIT_E ))
1120+ if (ret != WC_NO_ERR_TRACE (MP_INIT_E ) && ret != WC_NO_ERR_TRACE ( MEMORY_E ) )
11211121 mp_clear (r );
11221122 XFREE (r , key -> heap , DYNAMIC_TYPE_TMP_BUFFER );
11231123 }
11241124 if (u1 ) {
1125- if (ret != WC_NO_ERR_TRACE (MP_INIT_E ))
1125+ if (ret != WC_NO_ERR_TRACE (MP_INIT_E ) && ret != WC_NO_ERR_TRACE ( MEMORY_E ) )
11261126 mp_clear (u1 );
11271127 XFREE (u1 , key -> heap , DYNAMIC_TYPE_TMP_BUFFER );
11281128 }
11291129 if (u2 ) {
1130- if (ret != WC_NO_ERR_TRACE (MP_INIT_E ))
1130+ if (ret != WC_NO_ERR_TRACE (MP_INIT_E ) && ret != WC_NO_ERR_TRACE ( MEMORY_E ) )
11311131 mp_clear (u2 );
11321132 XFREE (u2 , key -> heap , DYNAMIC_TYPE_TMP_BUFFER );
11331133 }
11341134 if (w ) {
1135- if (ret != WC_NO_ERR_TRACE (MP_INIT_E ))
1135+ if (ret != WC_NO_ERR_TRACE (MP_INIT_E ) && ret != WC_NO_ERR_TRACE ( MEMORY_E ) )
11361136 mp_clear (w );
11371137 XFREE (w , key -> heap , DYNAMIC_TYPE_TMP_BUFFER );
11381138 }
11391139 if (v ) {
1140- if (ret != WC_NO_ERR_TRACE (MP_INIT_E ))
1140+ if (ret != WC_NO_ERR_TRACE (MP_INIT_E ) && ret != WC_NO_ERR_TRACE ( MEMORY_E ) )
11411141 mp_clear (v );
11421142 XFREE (v , key -> heap , DYNAMIC_TYPE_TMP_BUFFER );
11431143 }
0 commit comments