- ofn.lpstrFile = new TCHAR[PATH_LENGTH];\r
- if (flags & OFN_NOVALIDATE) {\r
- /* Directory hack. */\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, _countof(ofn.lpstrFile), _TRUNCATE, _T("%s"), current);\r
- ofn.nMaxFile = PATH_LENGTH;\r
+ ofn.lpstrFile = (TCHAR *) HeapAlloc(GetProcessHeap(), 0, PATH_LENGTH * sizeof(TCHAR));\r
+ if (ofn.lpstrFile) {
+ if (flags & OFN_NOVALIDATE) {\r
+ /* Directory hack. */\r
+ _sntprintf_s(ofn.lpstrFile, PATH_LENGTH, _TRUNCATE, _T(":%s:"), message_string(NSSM_GUI_BROWSE_FILTER_DIRECTORIES));\r
+ ofn.nMaxFile = DIR_LENGTH;\r
+ }\r
+ else {
+ _sntprintf_s(ofn.lpstrFile, PATH_LENGTH, _TRUNCATE, _T("%s"), current);\r
+ ofn.nMaxFile = PATH_LENGTH;\r
+ }