diff options
Diffstat (limited to 'updater/conf_comp_dialog.cpp')
-rw-r--r-- | updater/conf_comp_dialog.cpp | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/updater/conf_comp_dialog.cpp b/updater/conf_comp_dialog.cpp index 1134b0f..b2ab252 100644 --- a/updater/conf_comp_dialog.cpp +++ b/updater/conf_comp_dialog.cpp @@ -2,23 +2,20 @@ #include "conf_comp_dialog.h"
void FillFolder(TCHAR *folder_name, StrList *filenames) {
- TCHAR mask[MAX_PATH], filename[MAX_PATH], *p;
+ TCHAR filename[MAX_PATH], *p;
- _tcscpy(mask, folder_name);
- _tcscat(mask, _T("\\*.*"));
-
- _tcscpy(filename, folder_name);
- _tcscat(filename, _T("\\"));
- p = (filename + _tcslen(filename));
+ mir_sntprintf(filename, SIZEOF(filename), _T("%s\\*.*"), folder_name);
+ p = _tcsrchr(filename, '\\' ) + 1;
WIN32_FIND_DATA findData;
- HANDLE hFileSearch = FindFirstFile(mask, &findData);
- if(hFileSearch != INVALID_HANDLE_VALUE) {
+ HANDLE hFileSearch = FindFirstFile(filename, &findData);
+ if (hFileSearch != INVALID_HANDLE_VALUE)
+ {
do {
- if(p)
- _tcscpy(p, findData.cFileName);
+ _tcscpy(p, findData.cFileName);
- if(findData.cFileName[0] != '.') {
+ if (findData.cFileName[0] != '.')
+ {
if(findData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
FillFolder(filename, filenames);
} else {
|