Browse Source

Write canonical AppExit string.

If the user ran "nssm set <servicename> AppExit Default exit" the
default value of AppExit would be set verbatim to "exit" which is in
contrast the documented value "Exit" with normal capitalisation.

There's no harm to that fact, as AppExit is retrieved case-insensitively
but it was nonetheless not working as intended.
Iain Patterson 9 years ago
parent
commit
b197ffd8ae
1 changed files with 1 additions and 1 deletions
  1. 1 1
      settings.cpp

+ 1 - 1
settings.cpp

@@ -148,7 +148,7 @@ static int setting_set_exit_action(const TCHAR *service_name, void *param, const
   for (int i = 0; exit_action_strings[i]; i++) {
     if (! _tcsnicmp((const TCHAR *) action_string, exit_action_strings[i], ACTION_LEN)) {
       if (default_value && str_equiv(action_string, (TCHAR *) default_value)) ret = 0;
-      if (RegSetValueEx(key, code, 0, REG_SZ, (const unsigned char *) action_string, (unsigned long) (_tcslen(action_string) + 1) * sizeof(TCHAR)) != ERROR_SUCCESS) {
+      if (RegSetValueEx(key, code, 0, REG_SZ, (const unsigned char *) exit_action_strings[i], (unsigned long) (_tcslen(action_string) + 1) * sizeof(TCHAR)) != ERROR_SUCCESS) {
         print_message(stderr, NSSM_MESSAGE_SETVALUE_FAILED, code, service_name, error_string(GetLastError()));
         RegCloseKey(key);
         return -1;