diff --git a/dlls/crypt32/crl.c b/dlls/crypt32/crl.c index 1fa8aa9f846..967231b15b0 100644 --- a/dlls/crypt32/crl.c +++ b/dlls/crypt32/crl.c @@ -363,13 +363,11 @@ PCCRL_CONTEXT WINAPI CertDuplicateCRLContext(PCCRL_CONTEXT pCrlContext) BOOL WINAPI CertFreeCRLContext(PCCRL_CONTEXT pCrlContext) { - BOOL ret = TRUE; - TRACE("(%p)\n", pCrlContext); if (pCrlContext) - ret = Context_Release(&crl_from_ptr(pCrlContext)->base); - return ret; + Context_Release(&crl_from_ptr(pCrlContext)->base); + return TRUE; } DWORD WINAPI CertEnumCRLContextProperties(PCCRL_CONTEXT pCRLContext, diff --git a/dlls/crypt32/tests/crl.c b/dlls/crypt32/tests/crl.c index 313ebb3cf30..f39d02e6c14 100644 --- a/dlls/crypt32/tests/crl.c +++ b/dlls/crypt32/tests/crl.c @@ -120,6 +120,7 @@ static void testCreateCRL(void) static void testDupCRL(void) { PCCRL_CONTEXT context, dupContext; + BOOL res; context = CertDuplicateCRLContext(NULL); ok(context == NULL, "expected NULL\n"); @@ -128,8 +129,15 @@ static void testDupCRL(void) dupContext = CertDuplicateCRLContext(context); ok(dupContext != NULL, "expected a context\n"); ok(dupContext == context, "expected identical context addresses\n"); - CertFreeCRLContext(dupContext); - CertFreeCRLContext(context); + + res = CertFreeCRLContext(dupContext); + ok(res, "CertFreeCRLContext failed\n"); + + res = CertFreeCRLContext(context); + ok(res, "CertFreeCRLContext failed\n"); + + res = CertFreeCRLContext(NULL); + ok(res, "CertFreeCRLContext failed\n"); } static void testAddCRL(void)