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
10a2a5ef
Commit
10a2a5ef
authored
Aug 18, 2008
by
James Hawkins
Committed by
Alexandre Julliard
Aug 19, 2008
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msi: Base removal of a file on the component's action, not the file's state.
parent
7fbce31e
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
13 additions
and
1 deletion
+13
-1
files.c
dlls/msi/files.c
+1
-1
install.c
dlls/msi/tests/install.c
+12
-0
No files found.
dlls/msi/files.c
View file @
10a2a5ef
...
@@ -537,7 +537,7 @@ UINT ACTION_RemoveFiles( MSIPACKAGE *package )
...
@@ -537,7 +537,7 @@ UINT ACTION_RemoveFiles( MSIPACKAGE *package )
if
(
file
->
state
==
msifs_installed
)
if
(
file
->
state
==
msifs_installed
)
ERR
(
"removing installed file %s
\n
"
,
debugstr_w
(
file
->
TargetPath
));
ERR
(
"removing installed file %s
\n
"
,
debugstr_w
(
file
->
TargetPath
));
if
(
file
->
state
!=
msifs_present
)
if
(
file
->
Component
->
ActionRequest
!=
INSTALLSTATE_ABSENT
)
continue
;
continue
;
/* don't remove a file if the old file
/* don't remove a file if the old file
...
...
dlls/msi/tests/install.c
View file @
10a2a5ef
...
@@ -3199,7 +3199,10 @@ static void test_publish(void)
...
@@ -3199,7 +3199,10 @@ static void test_publish(void)
r
=
MsiInstallProductA
(
msifile
,
"FULL=1 REMOVE=ALL"
);
r
=
MsiInstallProductA
(
msifile
,
"FULL=1 REMOVE=ALL"
);
ok
(
r
==
ERROR_SUCCESS
,
"Expected ERROR_SUCCESS, got %d
\n
"
,
r
);
ok
(
r
==
ERROR_SUCCESS
,
"Expected ERROR_SUCCESS, got %d
\n
"
,
r
);
todo_wine
{
ok
(
pf_exists
(
"msitest
\\
maximus"
),
"File deleted
\n
"
);
ok
(
pf_exists
(
"msitest
\\
maximus"
),
"File deleted
\n
"
);
}
ok
(
pf_exists
(
"msitest"
),
"File deleted
\n
"
);
ok
(
pf_exists
(
"msitest"
),
"File deleted
\n
"
);
state
=
MsiQueryProductState
(
"{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}"
);
state
=
MsiQueryProductState
(
"{7DF88A48-996F-4EC8-A022-BF956F9B2CBB}"
);
...
@@ -4168,7 +4171,10 @@ static void test_removefiles(void)
...
@@ -4168,7 +4171,10 @@ static void test_removefiles(void)
ok
(
r
==
ERROR_SUCCESS
,
"Expected ERROR_SUCCESS, got %u
\n
"
,
r
);
ok
(
r
==
ERROR_SUCCESS
,
"Expected ERROR_SUCCESS, got %u
\n
"
,
r
);
ok
(
!
pf_exists
(
"msitest
\\
hydrogen"
),
"File not deleted
\n
"
);
ok
(
!
pf_exists
(
"msitest
\\
hydrogen"
),
"File not deleted
\n
"
);
ok
(
!
pf_exists
(
"msitest
\\
helium"
),
"File not deleted
\n
"
);
ok
(
!
pf_exists
(
"msitest
\\
helium"
),
"File not deleted
\n
"
);
todo_wine
{
ok
(
delete_pf
(
"msitest
\\
lithium"
,
TRUE
),
"File deleted
\n
"
);
ok
(
delete_pf
(
"msitest
\\
lithium"
,
TRUE
),
"File deleted
\n
"
);
}
ok
(
delete_pf
(
"msitest"
,
FALSE
),
"File deleted
\n
"
);
ok
(
delete_pf
(
"msitest"
,
FALSE
),
"File deleted
\n
"
);
create_pf
(
"msitest"
,
FALSE
);
create_pf
(
"msitest"
,
FALSE
);
...
@@ -4186,8 +4192,11 @@ static void test_removefiles(void)
...
@@ -4186,8 +4192,11 @@ static void test_removefiles(void)
r
=
MsiInstallProductA
(
msifile
,
"REMOVE=ALL"
);
r
=
MsiInstallProductA
(
msifile
,
"REMOVE=ALL"
);
ok
(
r
==
ERROR_SUCCESS
,
"Expected ERROR_SUCCESS, got %u
\n
"
,
r
);
ok
(
r
==
ERROR_SUCCESS
,
"Expected ERROR_SUCCESS, got %u
\n
"
,
r
);
ok
(
!
pf_exists
(
"msitest
\\
hydrogen"
),
"File not deleted
\n
"
);
ok
(
!
pf_exists
(
"msitest
\\
hydrogen"
),
"File not deleted
\n
"
);
todo_wine
{
ok
(
delete_pf
(
"msitest
\\
helium"
,
TRUE
),
"File deleted
\n
"
);
ok
(
delete_pf
(
"msitest
\\
helium"
,
TRUE
),
"File deleted
\n
"
);
ok
(
delete_pf
(
"msitest
\\
lithium"
,
TRUE
),
"File deleted
\n
"
);
ok
(
delete_pf
(
"msitest
\\
lithium"
,
TRUE
),
"File deleted
\n
"
);
}
ok
(
delete_pf
(
"msitest"
,
FALSE
),
"File deleted
\n
"
);
ok
(
delete_pf
(
"msitest"
,
FALSE
),
"File deleted
\n
"
);
create_pf
(
"msitest"
,
FALSE
);
create_pf
(
"msitest"
,
FALSE
);
...
@@ -4228,7 +4237,10 @@ static void test_removefiles(void)
...
@@ -4228,7 +4237,10 @@ static void test_removefiles(void)
ok
(
r
==
ERROR_SUCCESS
,
"Expected ERROR_SUCCESS, got %u
\n
"
,
r
);
ok
(
r
==
ERROR_SUCCESS
,
"Expected ERROR_SUCCESS, got %u
\n
"
,
r
);
ok
(
!
delete_pf
(
"msitest
\\
hydrogen"
,
TRUE
),
"File not deleted
\n
"
);
ok
(
!
delete_pf
(
"msitest
\\
hydrogen"
,
TRUE
),
"File not deleted
\n
"
);
ok
(
!
delete_pf
(
"msitest
\\
helium"
,
TRUE
),
"File not deleted
\n
"
);
ok
(
!
delete_pf
(
"msitest
\\
helium"
,
TRUE
),
"File not deleted
\n
"
);
todo_wine
{
ok
(
delete_pf
(
"msitest
\\
lithium"
,
TRUE
),
"File deleted
\n
"
);
ok
(
delete_pf
(
"msitest
\\
lithium"
,
TRUE
),
"File deleted
\n
"
);
}
ok
(
delete_pf
(
"msitest
\\
furlong"
,
TRUE
),
"File deleted
\n
"
);
ok
(
delete_pf
(
"msitest
\\
furlong"
,
TRUE
),
"File deleted
\n
"
);
ok
(
delete_pf
(
"msitest
\\
firkin"
,
TRUE
),
"File deleted
\n
"
);
ok
(
delete_pf
(
"msitest
\\
firkin"
,
TRUE
),
"File deleted
\n
"
);
ok
(
delete_pf
(
"msitest
\\
fortnight"
,
TRUE
),
"File deleted
\n
"
);
ok
(
delete_pf
(
"msitest
\\
fortnight"
,
TRUE
),
"File deleted
\n
"
);
...
...
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