diff --git a/dlls/msvcp60/locale.c b/dlls/msvcp60/locale.c index 6b9552104b6..2320886bd5f 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 606d6ca8510..ef06172c6db 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) {