#include "nssm.h"\r
\r
-static enum { NSSM_TAB_APPLICATION, NSSM_TAB_DETAILS, NSSM_TAB_LOGON, NSSM_TAB_DEPENDENCIES, NSSM_TAB_PROCESS, NSSM_TAB_SHUTDOWN, NSSM_TAB_EXIT, NSSM_TAB_IO, NSSM_TAB_ROTATION, NSSM_TAB_ENVIRONMENT, NSSM_TAB_HOOKS, NSSM_NUM_TABS };\r
+static enum { NSSM_TAB_APPLICATION, NSSM_TAB_DETAILS, NSSM_TAB_LOGON, NSSM_TAB_DEPENDENCIES, NSSM_TAB_PROCESS, NSSM_TAB_SHUTDOWN, NSSM_TAB_EXIT, NSSM_TAB_IO, NSSM_TAB_ROTATION, NSSM_TAB_ENVIRONMENT, NSSM_TAB_HOOKS, NSSM_NUM_TABS } nssm_tabs;\r
static HWND tablist[NSSM_NUM_TABS];\r
static const TCHAR *hook_event_strings[] = { NSSM_HOOK_EVENT_START, NSSM_HOOK_EVENT_STOP, NSSM_HOOK_EVENT_EXIT, NSSM_HOOK_EVENT_POWER, NSSM_HOOK_EVENT_ROTATE, NULL };\r
static const TCHAR *hook_action_strings[] = { NSSM_HOOK_ACTION_PRE, NSSM_HOOK_ACTION_POST, NSSM_HOOK_ACTION_CHANGE, NSSM_HOOK_ACTION_RESUME, NULL };\r
service->username = 0;\r
service->usernamelen = 0;\r
if (service->password) {\r
- SecureZeroMemory(service->password, service->passwordlen);\r
+ SecureZeroMemory(service->password, service->passwordlen * sizeof(TCHAR));\r
HeapFree(GetProcessHeap(), 0, service->password);\r
}\r
service->password = 0;\r
/* Get first password. */\r
if (! GetDlgItemText(tablist[NSSM_TAB_LOGON], IDC_PASSWORD1, service->password, (int) service->passwordlen)) {\r
HeapFree(GetProcessHeap(), 0, password);\r
- SecureZeroMemory(service->password, service->passwordlen);\r
+ SecureZeroMemory(service->password, service->passwordlen * sizeof(TCHAR));\r
HeapFree(GetProcessHeap(), 0, service->password);\r
service->password = 0;\r
service->passwordlen = 0;\r
\r
/* Get confirmation. */\r
if (! GetDlgItemText(tablist[NSSM_TAB_LOGON], IDC_PASSWORD2, password, (int) service->passwordlen)) {\r
- SecureZeroMemory(password, service->passwordlen);\r
+ SecureZeroMemory(password, service->passwordlen * sizeof(TCHAR));\r
HeapFree(GetProcessHeap(), 0, password);\r
- SecureZeroMemory(service->password, service->passwordlen);\r
+ SecureZeroMemory(service->password, service->passwordlen * sizeof(TCHAR));\r
HeapFree(GetProcessHeap(), 0, service->password);\r
service->password = 0;\r
service->passwordlen = 0;\r
/* Compare. */\r
if (_tcsncmp(password, service->password, service->passwordlen)) {\r
popup_message(window, MB_OK | MB_ICONEXCLAMATION, NSSM_GUI_MISSING_PASSWORD);\r
- SecureZeroMemory(password, service->passwordlen);\r
+ SecureZeroMemory(password, service->passwordlen * sizeof(TCHAR));\r
HeapFree(GetProcessHeap(), 0, password);\r
- SecureZeroMemory(service->password, service->passwordlen);\r
+ SecureZeroMemory(service->password, service->passwordlen * sizeof(TCHAR));\r
HeapFree(GetProcessHeap(), 0, service->password);\r
service->password = 0;\r
service->passwordlen = 0;\r
\r
case 3:\r
popup_message(window, MB_OK | MB_ICONEXCLAMATION, NSSM_GUI_SERVICE_NOT_INSTALLED);\r
- return 3;\r
cleanup_nssm_service(service);\r
+ return 3;\r
\r
case 4:\r
popup_message(window, MB_OK | MB_ICONEXCLAMATION, NSSM_GUI_REMOVE_SERVICE_FAILED);\r