From 44c5b35ef4f84a227a78bdee220809460f9314ba Mon Sep 17 00:00:00 2001
From: George Hazan <george.hazan@gmail.com>
Date: Sun, 3 Jun 2012 21:15:30 +0000
Subject: fix for langpack reload

git-svn-id: http://svn.miranda-ng.org/main/trunk@291 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
---
 src/core/modules.cpp              |  4 ++--
 src/modules/langpack/langpack.cpp | 12 +++++++-----
 2 files changed, 9 insertions(+), 7 deletions(-)

(limited to 'src')

diff --git a/src/core/modules.cpp b/src/core/modules.cpp
index c8d173f9a7..a0b6582d1c 100644
--- a/src/core/modules.cpp
+++ b/src/core/modules.cpp
@@ -134,7 +134,7 @@ void UnloadClcModule(void);
 void UnloadContactListModule(void);
 void UnloadEventsModule(void);
 void UnloadIdleModule(void);
-void UnloadLangPackModule(void);
+void UnloadLangPackModule(bool);
 void UnloadSslModule(void);
 void UnloadNetlibModule(void);
 void UnloadNewPlugins(void);
@@ -236,7 +236,7 @@ void UnloadDefaultModules(void)
 	UnloadUpdateNotifyModule();
 	UnloadNetlibModule();
 	UnloadSslModule();
-	UnloadLangPackModule();
+	UnloadLangPackModule(true);
 }
 
 int InitialiseModularEngine(void)
diff --git a/src/modules/langpack/langpack.cpp b/src/modules/langpack/langpack.cpp
index cec6511386..01dd16365d 100644
--- a/src/modules/langpack/langpack.cpp
+++ b/src/modules/langpack/langpack.cpp
@@ -537,14 +537,16 @@ int LoadLangPackModule(void)
 	return 0;
 }
 
-void UnloadLangPackModule()
+void UnloadLangPackModule(bool bRemoveAll)
 {
 	if ( !bModuleInitialized ) return;
 
 	int i;
-	for ( i=0; i < lMuuids.getCount(); i++ )
-		mir_free( lMuuids[i] );
-	lMuuids.destroy();
+	if ( bRemoveAll ) {
+		for ( i=0; i < lMuuids.getCount(); i++ )
+			mir_free( lMuuids[i] );
+		lMuuids.destroy();
+	}
 
 	LangPackEntry* p = langPack.entry;
 	for ( i=0; i < langPack.entryCount; i++, p++ ) {
@@ -574,7 +576,7 @@ INT_PTR ReloadLangpack(WPARAM wParam, LPARAM lParam)
 	if ( pszStr == NULL )
 		pszStr = langPack.filename;
 
-	UnloadLangPackModule();
+	UnloadLangPackModule(false);
 	LoadLangPack(pszStr);
 	return 0;
 }
-- 
cgit v1.2.3