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
052b3a74
Commit
052b3a74
authored
Mar 25, 2015
by
Hans Leidekker
Committed by
Alexandre Julliard
Mar 25, 2015
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msi: Fall back to the database summary information stream in MSI_OpenPackageW.
parent
248bd63b
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
16 additions
and
7 deletions
+16
-7
msipriv.h
dlls/msi/msipriv.h
+1
-0
package.c
dlls/msi/package.c
+13
-5
suminfo.c
dlls/msi/suminfo.c
+2
-2
No files found.
dlls/msi/msipriv.h
View file @
052b3a74
...
...
@@ -952,6 +952,7 @@ extern UINT msi_spawn_error_dialog( MSIPACKAGE*, LPWSTR, LPWSTR ) DECLSPEC_HIDDE
/* summary information */
extern
UINT
msi_get_suminfo
(
IStorage
*
stg
,
UINT
uiUpdateCount
,
MSISUMMARYINFO
**
si
)
DECLSPEC_HIDDEN
;
extern
UINT
msi_get_db_suminfo
(
MSIDATABASE
*
db
,
UINT
uiUpdateCount
,
MSISUMMARYINFO
**
si
)
DECLSPEC_HIDDEN
;
extern
LPWSTR
msi_suminfo_dup_string
(
MSISUMMARYINFO
*
si
,
UINT
uiProperty
)
DECLSPEC_HIDDEN
;
extern
INT
msi_suminfo_get_int32
(
MSISUMMARYINFO
*
si
,
UINT
uiProperty
)
DECLSPEC_HIDDEN
;
extern
LPWSTR
msi_get_suminfo_product
(
IStorage
*
stg
)
DECLSPEC_HIDDEN
;
...
...
dlls/msi/package.c
View file @
052b3a74
...
...
@@ -1488,8 +1488,12 @@ static WCHAR *get_package_code( MSIDATABASE *db )
r
=
msi_get_suminfo
(
db
->
storage
,
0
,
&
si
);
if
(
r
!=
ERROR_SUCCESS
)
{
WARN
(
"failed to load summary info %u
\n
"
,
r
);
return
NULL
;
r
=
msi_get_db_suminfo
(
db
,
0
,
&
si
);
if
(
r
!=
ERROR_SUCCESS
)
{
WARN
(
"failed to load summary info %u
\n
"
,
r
);
return
NULL
;
}
}
ret
=
msi_suminfo_dup_string
(
si
,
PID_REVNUMBER
);
msiobj_release
(
&
si
->
hdr
);
...
...
@@ -1638,9 +1642,13 @@ UINT MSI_OpenPackageW(LPCWSTR szPackage, MSIPACKAGE **pPackage)
r
=
msi_get_suminfo
(
db
->
storage
,
0
,
&
si
);
if
(
r
!=
ERROR_SUCCESS
)
{
WARN
(
"failed to load summary info
\n
"
);
msiobj_release
(
&
package
->
hdr
);
return
ERROR_INSTALL_PACKAGE_INVALID
;
r
=
msi_get_db_suminfo
(
db
,
0
,
&
si
);
if
(
r
!=
ERROR_SUCCESS
)
{
WARN
(
"failed to load summary info
\n
"
);
msiobj_release
(
&
package
->
hdr
);
return
ERROR_INSTALL_PACKAGE_INVALID
;
}
}
r
=
parse_suminfo
(
si
,
package
);
msiobj_release
(
&
si
->
hdr
);
...
...
dlls/msi/suminfo.c
View file @
052b3a74
...
...
@@ -469,7 +469,7 @@ UINT msi_get_suminfo( IStorage *stg, UINT uiUpdateCount, MSISUMMARYINFO **ret )
return
ERROR_SUCCESS
;
}
static
UINT
get_db_suminfo
(
MSIDATABASE
*
db
,
UINT
uiUpdateCount
,
MSISUMMARYINFO
**
ret
)
UINT
msi_
get_db_suminfo
(
MSIDATABASE
*
db
,
UINT
uiUpdateCount
,
MSISUMMARYINFO
**
ret
)
{
IStream
*
stm
;
MSISUMMARYINFO
*
si
;
...
...
@@ -547,7 +547,7 @@ UINT WINAPI MsiGetSummaryInformationW( MSIHANDLE hDatabase,
ret
=
msi_get_suminfo
(
db
->
storage
,
uiUpdateCount
,
&
si
);
if
(
ret
!=
ERROR_SUCCESS
)
ret
=
get_db_suminfo
(
db
,
uiUpdateCount
,
&
si
);
ret
=
msi_
get_db_suminfo
(
db
,
uiUpdateCount
,
&
si
);
if
(
ret
!=
ERROR_SUCCESS
)
{
if
((
si
=
create_suminfo
(
db
->
storage
,
uiUpdateCount
)))
...
...
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