Juan Lang : crypt32: Free memory on all paths.

Alexandre Julliard julliard at winehq.org
Fri Nov 2 08:10:28 CDT 2007


Module: wine
Branch: master
Commit: 644dedb75da87c1909010422737f1c2ea3a9d4e5
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=644dedb75da87c1909010422737f1c2ea3a9d4e5

Author: Juan Lang <juan.lang at gmail.com>
Date:   Thu Nov  1 20:05:31 2007 -0700

crypt32: Free memory on all paths.

---

 dlls/crypt32/str.c |   18 +++++++++---------
 1 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/dlls/crypt32/str.c b/dlls/crypt32/str.c
index d7d9bb4..a7de4df 100644
--- a/dlls/crypt32/str.c
+++ b/dlls/crypt32/str.c
@@ -839,21 +839,21 @@ BOOL WINAPI CertStrToNameW(DWORD dwCertEncodingType, LPCWSTR pszX500,
             *ppszError = NULL;
         ret = CryptEncodeObjectEx(dwCertEncodingType, X509_NAME, &info,
          0, NULL, pbEncoded, pcbEncoded);
-        for (i = 0; i < info.cRDN; i++)
-        {
-            DWORD j;
-
-            for (j = 0; j < info.rgRDN[i].cRDNAttr; j++)
-                LocalFree(info.rgRDN[i].rgRDNAttr[j].Value.pbData);
-            CryptMemFree(info.rgRDN[i].rgRDNAttr);
-        }
-        CryptMemFree(info.rgRDN);
     }
     else
     {
         SetLastError(error);
         ret = FALSE;
     }
+    for (i = 0; i < info.cRDN; i++)
+    {
+        DWORD j;
+
+        for (j = 0; j < info.rgRDN[i].cRDNAttr; j++)
+            LocalFree(info.rgRDN[i].rgRDNAttr[j].Value.pbData);
+        CryptMemFree(info.rgRDN[i].rgRDNAttr);
+    }
+    CryptMemFree(info.rgRDN);
     return ret;
 }
 




More information about the wine-cvs mailing list