[PATCH 3/6] attrib: Display filenames with absolute path as in native.
Christian Costa
titan.costa at gmail.com
Mon Mar 26 15:05:53 CDT 2012
---
programs/attrib/attrib.c | 14 ++++++++++----
1 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/programs/attrib/attrib.c b/programs/attrib/attrib.c
index 865f59c..19d7817 100644
--- a/programs/attrib/attrib.c
+++ b/programs/attrib/attrib.c
@@ -129,10 +129,12 @@ int wmain(int argc, WCHAR *argv[])
WIN32_FIND_DATAW fd;
WCHAR flags[] = {' ',' ',' ',' ',' ',' ',' ',' ','\0'};
WCHAR name[128];
+ WCHAR curdir[128];
DWORD attrib_set = 0;
DWORD attrib_clear = 0;
const WCHAR help_option[] = {'/','?','\0'};
- const WCHAR slashStarW[] = {'\\','*','\0'};
+ const WCHAR slash[] = {'\\','\0'};
+ const WCHAR start[] = {'*','\0'};
int i = 1;
if ((argc >= 2) && !strcmpW(argv[1], help_option)) {
@@ -141,8 +143,10 @@ int wmain(int argc, WCHAR *argv[])
}
/* By default all files from current directory are taken into account */
- GetCurrentDirectoryW(sizeof(name)/sizeof(WCHAR), name);
- strcatW (name, slashStarW);
+ GetCurrentDirectoryW(sizeof(curdir)/sizeof(WCHAR), curdir);
+ strcatW(curdir, slash);
+ strcpyW(name, curdir);
+ strcatW(name, start);
while (i < argc) {
WCHAR *param = argv[i++];
@@ -212,7 +216,9 @@ int wmain(int argc, WCHAR *argv[])
if (fd.dwFileAttributes & FILE_ATTRIBUTE_COMPRESSED) {
flags[5] = 'C';
}
- ATTRIB_wprintf(fmt, flags, fd.cFileName);
+ strcpyW(name, curdir);
+ strcatW(name, fd.cFileName);
+ ATTRIB_wprintf(fmt, flags, name);
for (count=0; count < 8; count++) flags[count] = ' ';
}
} while (FindNextFileW(hff, &fd) != 0);
More information about the wine-patches
mailing list