Adjust buffer sizes.
[nssm.git] / gui.cpp
diff --git a/gui.cpp b/gui.cpp
index 64382f4..3f34943 100644 (file)
--- a/gui.cpp
+++ b/gui.cpp
@@ -746,14 +746,17 @@ void browse(HWND window, TCHAR *current, unsigned long flags, ...) {
     va_end(arg);\r
     /* Remainder of the buffer is already zeroed */\r
   }\r
-  ofn.lpstrFile = new TCHAR[MAX_PATH];\r
+  ofn.lpstrFile = new TCHAR[PATH_LENGTH];\r
   if (flags & OFN_NOVALIDATE) {\r
     /* Directory hack. */\r
-    _sntprintf_s(ofn.lpstrFile, MAX_PATH, _TRUNCATE, _T(":%s:"), message_string(NSSM_GUI_BROWSE_FILTER_DIRECTORIES));\r
+    _sntprintf_s(ofn.lpstrFile, _countof(ofn.lpstrFile), _TRUNCATE, _T(":%s:"), message_string(NSSM_GUI_BROWSE_FILTER_DIRECTORIES));\r
+    ofn.nMaxFile = DIR_LENGTH;\r
   }\r
-  else _sntprintf_s(ofn.lpstrFile, MAX_PATH, _TRUNCATE, _T("%s"), current);\r
+  else {
+    _sntprintf_s(ofn.lpstrFile, _countof(ofn.lpstrFile), _TRUNCATE, _T("%s"), current);\r
+    ofn.nMaxFile = PATH_LENGTH;\r
+  }
   ofn.lpstrTitle = message_string(NSSM_GUI_BROWSE_TITLE);\r
-  ofn.nMaxFile = MAX_PATH;\r
   ofn.Flags = OFN_EXPLORER | OFN_HIDEREADONLY | OFN_PATHMUSTEXIST | flags;\r
 \r
   if (GetOpenFileName(&ofn)) {\r
@@ -774,7 +777,7 @@ INT_PTR CALLBACK tab_dlg(HWND tab, UINT message, WPARAM w, LPARAM l) {
     /* Button was pressed or control was controlled. */\r
     case WM_COMMAND:\r
       HWND dlg;\r
-      TCHAR buffer[MAX_PATH];\r
+      TCHAR buffer[PATH_LENGTH];\r
       unsigned char enabled;\r
 \r
       switch (LOWORD(w)) {\r