Revision: 9356 https://osdn.net/projects/ttssh2/scm/svn/commits/9356 Author: zmatsuo Date: 2021-08-14 12:25:51 +0900 (Sat, 14 Aug 2021) Log Message: ----------- ロードとアンロードを別関数に分離 Modified Paths: -------------- trunk/teraterm/teraterm/ttplug.c -------------- next part -------------- Modified: trunk/teraterm/teraterm/ttplug.c =================================================================== --- trunk/teraterm/teraterm/ttplug.c 2021-08-13 04:33:14 UTC (rev 9355) +++ trunk/teraterm/teraterm/ttplug.c 2021-08-14 03:25:51 UTC (rev 9356) @@ -141,9 +141,8 @@ } } -void PASCAL TTXInit(PTTSet ts_, PComVar cv_) +static void LoadExtensions(PTTSet ts_) { - int i; wchar_t *load_mask; WIN32_FIND_DATAW fd; HANDLE hFind; @@ -166,8 +165,30 @@ if (NumExtensions==0) return; qsort(Extensions, NumExtensions, sizeof(Extensions[0]), compareOrder); +} +static void UnloadExtensions() +{ + int i; for (i = 0; i < NumExtensions; i++) { + free(Extensions[i].exports); + FreeLibrary(Extensions[i].LibHandle); + } + + free(Extensions); + Extensions = NULL; + NumExtensions = 0; +} + +void PASCAL TTXInit(PTTSet ts_, PComVar cv_) +{ + int i; + + LoadExtensions(ts_); + + if (NumExtensions==0) return; + + for (i = 0; i < NumExtensions; i++) { if (Extensions[i].exports->TTXInit != NULL) { Extensions[i].exports->TTXInit(ts_, cv_); } @@ -350,14 +371,7 @@ } } - for (i = 0; i < NumExtensions; i++) { - free(Extensions[i].exports); - FreeLibrary(Extensions[i].LibHandle); - } - - free(Extensions); - Extensions = NULL; - NumExtensions = 0; + UnloadExtensions(); } void PASCAL TTXSetCommandLine(PCHAR cmd, int cmdlen, PGetHNRec rec) {