Author: mturk Date: Tue Mar 20 05:28:39 2012 New Revision: 1302771 URL: http://svn.apache.org/viewvc?rev=1302771&view=rev Log: Use isapi_redirect path as mutex name so we don't mix different physical instances
Modified: tomcat/jk/trunk/native/iis/installer/isapi-redirector-win32-msi.ism tomcat/jk/trunk/native/iis/jk_isapi_plugin.c Modified: tomcat/jk/trunk/native/iis/installer/isapi-redirector-win32-msi.ism URL: http://svn.apache.org/viewvc/tomcat/jk/trunk/native/iis/installer/isapi-redirector-win32-msi.ism?rev=1302771&r1=1302770&r2=1302771&view=diff ============================================================================== --- tomcat/jk/trunk/native/iis/installer/isapi-redirector-win32-msi.ism (original) +++ tomcat/jk/trunk/native/iis/installer/isapi-redirector-win32-msi.ism Tue Mar 20 05:28:39 2012 @@ -3425,7 +3425,7 @@ TQBzAGkAAQBSAGUAbABlAGEAcwBlAA== <row><td>ProductID</td><td>none</td><td/></row> <row><td>ProductLanguage</td><td>1033</td><td/></row> <row><td>ProductName</td><td>Tomcat Isapi Redirector</td><td/></row> - <row><td>ProductVersion</td><td>1.2.33</td><td/></row> + <row><td>ProductVersion</td><td>1.2.34</td><td/></row> <row><td>ProgressType0</td><td>install</td><td/></row> <row><td>ProgressType1</td><td>Installing</td><td/></row> <row><td>ProgressType2</td><td>installed</td><td/></row> Modified: tomcat/jk/trunk/native/iis/jk_isapi_plugin.c URL: http://svn.apache.org/viewvc/tomcat/jk/trunk/native/iis/jk_isapi_plugin.c?rev=1302771&r1=1302770&r2=1302771&view=diff ============================================================================== --- tomcat/jk/trunk/native/iis/jk_isapi_plugin.c (original) +++ tomcat/jk/trunk/native/iis/jk_isapi_plugin.c Tue Mar 20 05:28:39 2012 @@ -467,6 +467,7 @@ static struct error_reasons { static char dll_file_path[MAX_PATH]; static char ini_file_name[MAX_PATH]; +static char ini_mutex_name[MAX_PATH]; static int using_ini_file = JK_FALSE; static HANDLE init_cs = NULL; static volatile int is_inited = JK_FALSE; @@ -505,8 +506,6 @@ static HANDLE watchdog_handle = NULL; static char error_page_buf[INTERNET_MAX_URL_LENGTH] = {0}; static char *error_page = NULL; -static const char *JK_MUTEX_NAME = "Global\\JK_ISAPI_REDIRECT_MUTEX"; - #define URI_SELECT_OPT_PARSED 0 #define URI_SELECT_OPT_UNPARSED 1 #define URI_SELECT_OPT_ESCAPED 2 @@ -2437,6 +2436,17 @@ BOOL WINAPI DllMain(HINSTANCE hInst, *p = '\0'; StringCbCopy(ini_file_name, MAX_PATH, fname); StringCbCat(ini_file_name, MAX_PATH, ".properties"); + StringCbCopy(ini_mutex_name, MAX_PATH, "Global\\JK_"); + StringCbCat(ini_mutex_name, MAX_PATH, fname); + StringCbCat(ini_mutex_name, MAX_PATH, "_mutex"); + p = &fname[10]; + while (*p) { + if (!isalnum((unsigned char)*p)) + *p = '_'; + else + *p = toupper(*p); + p++; + } } else { /* Cannot obtain file name ? */ @@ -2471,9 +2481,9 @@ BOOL WINAPI DllMain(HINSTANCE hInst, StringCbPrintf(HTTP_WORKER_HEADER_INDEX, RES_BUFFER_SIZE, HTTP_HEADER_TEMPLATE, WORKER_HEADER_INDEX_BASE, hInst); InitializeCriticalSection(&log_cs); - init_cs = CreateMutex(jk_get_sa_with_null_dacl(), FALSE, JK_MUTEX_NAME); + init_cs = CreateMutex(jk_get_sa_with_null_dacl(), FALSE, ini_mutex_name); if (init_cs == NULL && GetLastError() == ERROR_ALREADY_EXISTS) - init_cs = OpenMutex(MUTEX_ALL_ACCESS, FALSE, JK_MUTEX_NAME); + init_cs = OpenMutex(MUTEX_ALL_ACCESS, FALSE, ini_mutex_name); if (init_cs == NULL) return JK_FALSE; break; --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org