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
c32d9d70
Commit
c32d9d70
authored
Feb 16, 2010
by
Hans Leidekker
Committed by
Alexandre Julliard
Feb 16, 2010
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msi: Get rid of ACTION_VerifyFeatureForAction.
parent
598c5426
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
17 additions
and
29 deletions
+17
-29
action.c
dlls/msi/action.c
+5
-6
classes.c
dlls/msi/classes.c
+12
-11
helpers.c
dlls/msi/helpers.c
+0
-11
msipriv.h
dlls/msi/msipriv.h
+0
-1
No files found.
dlls/msi/action.c
View file @
c32d9d70
...
...
@@ -2619,7 +2619,7 @@ static void ACTION_RefCountComponent( MSIPACKAGE* package, MSICOMPONENT *comp )
{
ComponentList
*
cl
;
if
(
!
ACTION_VerifyFeatureForAction
(
feature
,
INSTALLSTATE_LOCAL
)
)
if
(
feature
->
ActionRequest
!=
INSTALLSTATE_LOCAL
)
continue
;
LIST_FOR_EACH_ENTRY
(
cl
,
&
feature
->
Components
,
ComponentList
,
entry
)
...
...
@@ -2634,7 +2634,7 @@ static void ACTION_RefCountComponent( MSIPACKAGE* package, MSICOMPONENT *comp )
{
ComponentList
*
cl
;
if
(
!
ACTION_VerifyFeatureForAction
(
feature
,
INSTALLSTATE_ABSENT
)
)
if
(
feature
->
ActionRequest
!=
INSTALLSTATE_ABSENT
)
continue
;
LIST_FOR_EACH_ENTRY
(
cl
,
&
feature
->
Components
,
ComponentList
,
entry
)
...
...
@@ -3922,10 +3922,9 @@ static UINT ACTION_PublishFeatures(MSIPACKAGE *package)
BOOL
absent
=
FALSE
;
MSIRECORD
*
uirow
;
if
(
!
ACTION_VerifyFeatureForAction
(
feature
,
INSTALLSTATE_LOCAL
)
&&
!
ACTION_VerifyFeatureForAction
(
feature
,
INSTALLSTATE_SOURCE
)
&&
!
ACTION_VerifyFeatureForAction
(
feature
,
INSTALLSTATE_ADVERTISED
))
absent
=
TRUE
;
if
(
feature
->
ActionRequest
!=
INSTALLSTATE_LOCAL
&&
feature
->
ActionRequest
!=
INSTALLSTATE_SOURCE
&&
feature
->
ActionRequest
!=
INSTALLSTATE_ADVERTISED
)
absent
=
TRUE
;
size
=
1
;
LIST_FOR_EACH_ENTRY
(
cl
,
&
feature
->
Components
,
ComponentList
,
entry
)
...
...
dlls/msi/classes.c
View file @
c32d9d70
...
...
@@ -809,16 +809,17 @@ UINT ACTION_RegisterClassInfo(MSIPACKAGE *package)
continue
;
feature
=
cls
->
Feature
;
if
(
!
feature
)
continue
;
/*
* MSDN says that these are based on Feature not on Component.
*/
if
(
!
ACTION_VerifyFeatureForAction
(
feature
,
INSTALLSTATE_LOCAL
)
&&
!
ACTION_VerifyFeatureForAction
(
feature
,
INSTALLSTATE_ADVERTISED
)
)
if
(
feature
->
ActionRequest
!=
INSTALLSTATE_LOCAL
&&
feature
->
ActionRequest
!=
INSTALLSTATE_ADVERTISED
)
{
TRACE
(
"Skipping class %s reg due to disabled feature %s
\n
"
,
debugstr_w
(
cls
->
clsid
),
debugstr_w
(
feature
->
Feature
));
TRACE
(
"Feature %s not scheduled for installation, skipping regstration of class %s
\n
"
,
debugstr_w
(
feature
->
Feature
),
debugstr_w
(
cls
->
clsid
));
continue
;
}
...
...
@@ -1142,18 +1143,18 @@ UINT ACTION_RegisterExtensionInfo(MSIPACKAGE *package)
continue
;
feature
=
ext
->
Feature
;
if
(
!
feature
)
continue
;
/*
* yes. MSDN says that these are based on _Feature_ not on
* Component. So verify the feature is to be installed
*/
if
((
!
ACTION_VerifyFeatureForAction
(
feature
,
INSTALLSTATE_LOCAL
))
&&
!
(
install_on_demand
&&
ACTION_VerifyFeatureForAction
(
feature
,
INSTALLSTATE_ADVERTISED
)))
if
(
feature
->
ActionRequest
!=
INSTALLSTATE_LOCAL
&&
!
(
install_on_demand
&&
feature
->
ActionRequest
==
INSTALLSTATE_ADVERTISED
))
{
TRACE
(
"Skipping extension %s reg due to disabled feature %s
\n
"
,
debugstr_w
(
ext
->
Extension
),
debugstr_w
(
feature
->
Feature
));
TRACE
(
"Feature %s not scheduled for installation, skipping registration of extension %s
\n
"
,
debugstr_w
(
feature
->
Feature
),
debugstr_w
(
ext
->
Extension
));
continue
;
}
...
...
dlls/msi/helpers.c
View file @
c32d9d70
...
...
@@ -604,17 +604,6 @@ void ui_actiondata(MSIPACKAGE *package, LPCWSTR action, MSIRECORD * record)
msiobj_release
(
&
row
->
hdr
);
}
BOOL
ACTION_VerifyFeatureForAction
(
const
MSIFEATURE
*
feature
,
INSTALLSTATE
check
)
{
if
(
!
feature
)
return
FALSE
;
if
(
feature
->
ActionRequest
==
check
)
return
TRUE
;
else
return
FALSE
;
}
void
reduce_to_longfilename
(
WCHAR
*
filename
)
{
LPWSTR
p
=
strchrW
(
filename
,
'|'
);
...
...
dlls/msi/msipriv.h
View file @
c32d9d70
...
...
@@ -982,7 +982,6 @@ extern void msi_free_action_script(MSIPACKAGE *package, UINT script);
extern
LPWSTR
build_icon_path
(
MSIPACKAGE
*
,
LPCWSTR
);
extern
LPWSTR
build_directory_name
(
DWORD
,
...);
extern
BOOL
create_full_pathW
(
const
WCHAR
*
path
);
extern
BOOL
ACTION_VerifyFeatureForAction
(
const
MSIFEATURE
*
,
INSTALLSTATE
);
extern
void
reduce_to_longfilename
(
WCHAR
*
);
extern
LPWSTR
create_component_advertise_string
(
MSIPACKAGE
*
,
MSICOMPONENT
*
,
LPCWSTR
);
extern
void
ACTION_UpdateComponentStates
(
MSIPACKAGE
*
package
,
LPCWSTR
szFeature
);
...
...
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