Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
0a3a741a
Commit
0a3a741a
authored
Mar 29, 2007
by
Jason Edmeades
Committed by
Alexandre Julliard
Mar 30, 2007
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
xcopy: Add support for /H (Hidden/System).
parent
432d81d7
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
2 deletions
+15
-2
xcopy.c
programs/xcopy/xcopy.c
+15
-2
No files found.
programs/xcopy/xcopy.c
View file @
0a3a741a
...
...
@@ -52,6 +52,7 @@
#define OPT_SHORTNAME 0x00000200
#define OPT_MUSTEXIST 0x00000400
#define OPT_REPLACEREAD 0x00000800
#define OPT_COPYHIDSYS 0x00001000
#define MAXSTRING 8192
...
...
@@ -157,6 +158,7 @@ int main (int argc, char *argv[])
case
'N'
:
flags
|=
OPT_SHORTNAME
;
break
;
case
'U'
:
flags
|=
OPT_MUSTEXIST
;
break
;
case
'R'
:
flags
|=
OPT_REPLACEREAD
;
break
;
case
'H'
:
flags
|=
OPT_COPYHIDSYS
;
break
;
case
'-'
:
if
(
toupper
(
argvW
[
0
][
2
])
==
'Y'
)
flags
&=
~
OPT_NOPROMPT
;
break
;
default:
...
...
@@ -390,7 +392,7 @@ static int XCOPY_DoCopy(WCHAR *srcstem, WCHAR *srcspec,
BOOL
findres
=
TRUE
;
WCHAR
*
inputpath
,
*
outputpath
;
BOOL
copiedFile
=
FALSE
;
DWORD
destAttribs
;
DWORD
destAttribs
,
srcAttribs
;
BOOL
skipFile
;
/* Allocate some working memory on heap to minimize footprint */
...
...
@@ -440,9 +442,20 @@ static int XCOPY_DoCopy(WCHAR *srcstem, WCHAR *srcspec,
wine_dbgstr_w
(
copyTo
));
if
(
!
copiedFile
&&
!
(
flags
&
OPT_SIMULATE
))
XCOPY_CreateDirectory
(
deststem
);
/* See if allowed to copy it */
srcAttribs
=
GetFileAttributesW
(
copyFrom
);
if
((
srcAttribs
&
FILE_ATTRIBUTE_HIDDEN
)
||
(
srcAttribs
&
FILE_ATTRIBUTE_SYSTEM
))
{
if
(
!
(
flags
&
OPT_COPYHIDSYS
))
{
skipFile
=
TRUE
;
}
}
/* See if file exists */
destAttribs
=
GetFileAttributesW
(
copyTo
);
if
(
destAttribs
!=
INVALID_FILE_ATTRIBUTES
&&
!
(
flags
&
OPT_NOPROMPT
))
{
if
(
!
skipFile
&&
destAttribs
!=
INVALID_FILE_ATTRIBUTES
&&
!
(
flags
&
OPT_NOPROMPT
))
{
DWORD
count
;
char
answer
[
10
];
BOOL
answered
=
FALSE
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment