Piotr Caban : msvcp: Fix global_locale leak.

Alexandre Julliard julliard at winehq.org
Thu May 8 13:35:20 CDT 2014


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

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Thu May  8 16:44:44 2014 +0200

msvcp: Fix global_locale leak.

---

 dlls/msvcp60/locale.c |    3 ++-
 dlls/msvcp90/locale.c |    3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/dlls/msvcp60/locale.c b/dlls/msvcp60/locale.c
index 6b95521..2320886 100644
--- a/dlls/msvcp60/locale.c
+++ b/dlls/msvcp60/locale.c
@@ -8696,8 +8696,9 @@ void free_locale(void)
     facets_elem *iter, *safe;
 
     if(global_locale) {
-        locale__Locimp_dtor(global_locale);
         locale_dtor(&classic_locale);
+        locale__Locimp_dtor(global_locale);
+        MSVCRT_operator_delete(global_locale);
     }
 
     LIST_FOR_EACH_ENTRY_SAFE(iter, safe, &lazy_facets, facets_elem, entry) {
diff --git a/dlls/msvcp90/locale.c b/dlls/msvcp90/locale.c
index 606d6ca..ef06172 100644
--- a/dlls/msvcp90/locale.c
+++ b/dlls/msvcp90/locale.c
@@ -10690,8 +10690,9 @@ void free_locale(void)
     facets_elem *iter, *safe;
 
     if(global_locale) {
-        locale__Locimp_dtor(global_locale);
         locale_dtor(&classic_locale);
+        locale__Locimp_dtor(global_locale);
+        MSVCRT_operator_delete(global_locale);
     }
 
     LIST_FOR_EACH_ENTRY_SAFE(iter, safe, &lazy_facets, facets_elem, entry) {




More information about the wine-cvs mailing list