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
062ad505
Commit
062ad505
authored
Sep 15, 2005
by
Mike McCormack
Committed by
Alexandre Julliard
Sep 15, 2005
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Rename load_dynamic_property and remove its unused 3rd argument.
parent
9f498891
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
42 additions
and
52 deletions
+42
-52
action.c
dlls/msi/action.c
+19
-19
action.h
dlls/msi/action.h
+1
-1
custom.c
dlls/msi/custom.c
+3
-7
dialog.c
dlls/msi/dialog.c
+5
-5
events.c
dlls/msi/events.c
+1
-1
files.c
dlls/msi/files.c
+2
-2
format.c
dlls/msi/format.c
+2
-3
helpers.c
dlls/msi/helpers.c
+7
-12
install.c
dlls/msi/install.c
+1
-1
upgrade.c
dlls/msi/upgrade.c
+1
-1
No files found.
dlls/msi/action.c
View file @
062ad505
...
@@ -475,7 +475,7 @@ UINT ACTION_DoTopLevelINSTALL(MSIPACKAGE *package, LPCWSTR szPackagePath,
...
@@ -475,7 +475,7 @@ UINT ACTION_DoTopLevelINSTALL(MSIPACKAGE *package, LPCWSTR szPackagePath,
strcatW
(
path
,
cszbs
);
strcatW
(
path
,
cszbs
);
}
}
check
=
load_dynamic_property
(
package
,
cszSourceDir
,
NULL
);
check
=
msi_dup_property
(
package
,
cszSourceDir
);
if
(
!
check
)
if
(
!
check
)
MSI_SetPropertyW
(
package
,
cszSourceDir
,
path
);
MSI_SetPropertyW
(
package
,
cszSourceDir
,
path
);
HeapFree
(
GetProcessHeap
(),
0
,
check
);
HeapFree
(
GetProcessHeap
(),
0
,
check
);
...
@@ -1355,7 +1355,7 @@ static MSIFOLDER *load_folder( MSIPACKAGE *package, LPCWSTR dir )
...
@@ -1355,7 +1355,7 @@ static MSIFOLDER *load_folder( MSIPACKAGE *package, LPCWSTR dir )
ERR
(
"failed to load parent folder %s
\n
"
,
debugstr_w
(
parent
));
ERR
(
"failed to load parent folder %s
\n
"
,
debugstr_w
(
parent
));
}
}
folder
->
Property
=
load_dynamic_property
(
package
,
dir
,
NULL
);
folder
->
Property
=
msi_dup_property
(
package
,
dir
);
msiobj_release
(
&
row
->
hdr
);
msiobj_release
(
&
row
->
hdr
);
...
@@ -1413,7 +1413,7 @@ static BOOL process_state_property (MSIPACKAGE* package, LPCWSTR property,
...
@@ -1413,7 +1413,7 @@ static BOOL process_state_property (MSIPACKAGE* package, LPCWSTR property,
LPWSTR
override
;
LPWSTR
override
;
MSIFEATURE
*
feature
;
MSIFEATURE
*
feature
;
override
=
load_dynamic_property
(
package
,
property
,
NULL
);
override
=
msi_dup_property
(
package
,
property
);
if
(
!
override
)
if
(
!
override
)
return
FALSE
;
return
FALSE
;
...
@@ -1472,7 +1472,7 @@ static UINT SetFeatureStates(MSIPACKAGE *package)
...
@@ -1472,7 +1472,7 @@ static UINT SetFeatureStates(MSIPACKAGE *package)
TRACE
(
"Checking Install Level
\n
"
);
TRACE
(
"Checking Install Level
\n
"
);
level
=
load_dynamic_property
(
package
,
szlevel
,
NULL
);
level
=
msi_dup_property
(
package
,
szlevel
);
if
(
level
)
if
(
level
)
{
{
install_level
=
atoiW
(
level
);
install_level
=
atoiW
(
level
);
...
@@ -1800,7 +1800,7 @@ static UINT ACTION_CostFinalize(MSIPACKAGE *package)
...
@@ -1800,7 +1800,7 @@ static UINT ACTION_CostFinalize(MSIPACKAGE *package)
MSI_SetPropertyW
(
package
,
szCosting
,
szOne
);
MSI_SetPropertyW
(
package
,
szCosting
,
szOne
);
/* set default run level if not set */
/* set default run level if not set */
level
=
load_dynamic_property
(
package
,
szlevel
,
NULL
);
level
=
msi_dup_property
(
package
,
szlevel
);
if
(
!
level
)
if
(
!
level
)
MSI_SetPropertyW
(
package
,
szlevel
,
szOne
);
MSI_SetPropertyW
(
package
,
szlevel
,
szOne
);
HeapFree
(
GetProcessHeap
(),
0
,
level
);
HeapFree
(
GetProcessHeap
(),
0
,
level
);
...
@@ -1992,7 +1992,7 @@ static UINT ITERATE_WriteRegistryValues(MSIRECORD *row, LPVOID param)
...
@@ -1992,7 +1992,7 @@ static UINT ITERATE_WriteRegistryValues(MSIRECORD *row, LPVOID param)
case
-
1
:
case
-
1
:
{
{
static
const
WCHAR
szALLUSER
[]
=
{
'A'
,
'L'
,
'L'
,
'U'
,
'S'
,
'E'
,
'R'
,
'S'
,
0
};
static
const
WCHAR
szALLUSER
[]
=
{
'A'
,
'L'
,
'L'
,
'U'
,
'S'
,
'E'
,
'R'
,
'S'
,
0
};
LPWSTR
all_users
=
load_dynamic_property
(
package
,
szALLUSER
,
NULL
);
LPWSTR
all_users
=
msi_dup_property
(
package
,
szALLUSER
);
if
(
all_users
&&
all_users
[
0
]
==
'1'
)
if
(
all_users
&&
all_users
[
0
]
==
'1'
)
{
{
root_key
=
HKEY_LOCAL_MACHINE
;
root_key
=
HKEY_LOCAL_MACHINE
;
...
@@ -2971,16 +2971,16 @@ static UINT ACTION_PublishProduct(MSIPACKAGE *package)
...
@@ -2971,16 +2971,16 @@ static UINT ACTION_PublishProduct(MSIPACKAGE *package)
goto
end
;
goto
end
;
buffer
=
load_dynamic_property
(
package
,
INSTALLPROPERTY_PRODUCTNAMEW
,
NULL
);
buffer
=
msi_dup_property
(
package
,
INSTALLPROPERTY_PRODUCTNAMEW
);
msi_reg_set_val_str
(
hukey
,
INSTALLPROPERTY_PRODUCTNAMEW
,
buffer
);
msi_reg_set_val_str
(
hukey
,
INSTALLPROPERTY_PRODUCTNAMEW
,
buffer
);
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
buffer
=
load_dynamic_property
(
package
,
szProductLanguage
,
NULL
);
buffer
=
msi_dup_property
(
package
,
szProductLanguage
);
langid
=
atoiW
(
buffer
);
langid
=
atoiW
(
buffer
);
msi_reg_set_val_dword
(
hkey
,
INSTALLPROPERTY_LANGUAGEW
,
langid
);
msi_reg_set_val_dword
(
hkey
,
INSTALLPROPERTY_LANGUAGEW
,
langid
);
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
buffer
=
load_dynamic_property
(
package
,
szARPProductIcon
,
NULL
);
buffer
=
msi_dup_property
(
package
,
szARPProductIcon
);
if
(
buffer
)
if
(
buffer
)
{
{
LPWSTR
path
;
LPWSTR
path
;
...
@@ -2989,7 +2989,7 @@ static UINT ACTION_PublishProduct(MSIPACKAGE *package)
...
@@ -2989,7 +2989,7 @@ static UINT ACTION_PublishProduct(MSIPACKAGE *package)
}
}
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
buffer
=
load_dynamic_property
(
package
,
szProductVersion
,
NULL
);
buffer
=
msi_dup_property
(
package
,
szProductVersion
);
if
(
buffer
)
if
(
buffer
)
{
{
DWORD
verdword
=
build_version_dword
(
buffer
);
DWORD
verdword
=
build_version_dword
(
buffer
);
...
@@ -3081,10 +3081,10 @@ static UINT ITERATE_WriteIniValues(MSIRECORD *row, LPVOID param)
...
@@ -3081,10 +3081,10 @@ static UINT ITERATE_WriteIniValues(MSIRECORD *row, LPVOID param)
{
{
folder
=
resolve_folder
(
package
,
dirproperty
,
FALSE
,
FALSE
,
NULL
);
folder
=
resolve_folder
(
package
,
dirproperty
,
FALSE
,
FALSE
,
NULL
);
if
(
!
folder
)
if
(
!
folder
)
folder
=
load_dynamic_property
(
package
,
dirproperty
,
NULL
);
folder
=
msi_dup_property
(
package
,
dirproperty
);
}
}
else
else
folder
=
load_dynamic_property
(
package
,
szWindowsFolder
,
NULL
);
folder
=
msi_dup_property
(
package
,
szWindowsFolder
);
if
(
!
folder
)
if
(
!
folder
)
{
{
...
@@ -3402,7 +3402,7 @@ static UINT ACTION_RegisterProduct(MSIPACKAGE *package)
...
@@ -3402,7 +3402,7 @@ static UINT ACTION_RegisterProduct(MSIPACKAGE *package)
for
(
i
=
0
;
szPropKeys
[
i
][
0
];
i
++
)
for
(
i
=
0
;
szPropKeys
[
i
][
0
];
i
++
)
{
{
buffer
=
load_dynamic_property
(
package
,
szPropKeys
[
i
],
NULL
);
buffer
=
msi_dup_property
(
package
,
szPropKeys
[
i
]
);
msi_reg_set_val_str
(
hkey
,
szRegKeys
[
i
],
buffer
);
msi_reg_set_val_str
(
hkey
,
szRegKeys
[
i
],
buffer
);
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
i
++
;
i
++
;
...
@@ -3459,11 +3459,11 @@ static UINT ACTION_RegisterProduct(MSIPACKAGE *package)
...
@@ -3459,11 +3459,11 @@ static UINT ACTION_RegisterProduct(MSIPACKAGE *package)
msi_reg_set_val_str
(
hkey
,
INSTALLPROPERTY_INSTALLDATEW
,
buffer
);
msi_reg_set_val_str
(
hkey
,
INSTALLPROPERTY_INSTALLDATEW
,
buffer
);
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
buffer
=
load_dynamic_property
(
package
,
szProductLanguage
,
NULL
);
buffer
=
msi_dup_property
(
package
,
szProductLanguage
);
msi_reg_set_val_dword
(
hkey
,
INSTALLPROPERTY_LANGUAGEW
,
atoiW
(
buffer
)
);
msi_reg_set_val_dword
(
hkey
,
INSTALLPROPERTY_LANGUAGEW
,
atoiW
(
buffer
)
);
HeapFree
(
GetProcessHeap
(),
1
,
buffer
);
HeapFree
(
GetProcessHeap
(),
1
,
buffer
);
buffer
=
load_dynamic_property
(
package
,
szProductVersion
,
NULL
);
buffer
=
msi_dup_property
(
package
,
szProductVersion
);
if
(
buffer
)
if
(
buffer
)
{
{
DWORD
verdword
=
build_version_dword
(
buffer
);
DWORD
verdword
=
build_version_dword
(
buffer
);
...
@@ -3475,7 +3475,7 @@ static UINT ACTION_RegisterProduct(MSIPACKAGE *package)
...
@@ -3475,7 +3475,7 @@ static UINT ACTION_RegisterProduct(MSIPACKAGE *package)
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
/* Handle Upgrade Codes */
/* Handle Upgrade Codes */
upgrade_code
=
load_dynamic_property
(
package
,
szUpgradeCode
,
NULL
);
upgrade_code
=
msi_dup_property
(
package
,
szUpgradeCode
);
if
(
upgrade_code
)
if
(
upgrade_code
)
{
{
HKEY
hkey2
;
HKEY
hkey2
;
...
@@ -3660,7 +3660,7 @@ static UINT ACTION_RegisterUser(MSIPACKAGE *package)
...
@@ -3660,7 +3660,7 @@ static UINT ACTION_RegisterUser(MSIPACKAGE *package)
if
(
!
package
)
if
(
!
package
)
return
ERROR_INVALID_HANDLE
;
return
ERROR_INVALID_HANDLE
;
productid
=
load_dynamic_property
(
package
,
INSTALLPROPERTY_PRODUCTIDW
,
&
rc
);
productid
=
msi_dup_property
(
package
,
INSTALLPROPERTY_PRODUCTIDW
);
if
(
!
productid
)
if
(
!
productid
)
return
ERROR_SUCCESS
;
return
ERROR_SUCCESS
;
...
@@ -3671,7 +3671,7 @@ static UINT ACTION_RegisterUser(MSIPACKAGE *package)
...
@@ -3671,7 +3671,7 @@ static UINT ACTION_RegisterUser(MSIPACKAGE *package)
i
=
0
;
i
=
0
;
while
(
szPropKeys
[
i
][
0
]
!=
0
)
while
(
szPropKeys
[
i
][
0
]
!=
0
)
{
{
buffer
=
load_dynamic_property
(
package
,
szPropKeys
[
i
],
NULL
);
buffer
=
msi_dup_property
(
package
,
szPropKeys
[
i
]
);
msi_reg_set_val_str
(
hkey
,
szRegKeys
[
i
],
buffer
);
msi_reg_set_val_str
(
hkey
,
szRegKeys
[
i
],
buffer
);
i
++
;
i
++
;
}
}
...
@@ -3690,7 +3690,7 @@ static UINT ACTION_ExecuteAction(MSIPACKAGE *package)
...
@@ -3690,7 +3690,7 @@ static UINT ACTION_ExecuteAction(MSIPACKAGE *package)
static
const
WCHAR
szTwo
[]
=
{
'2'
,
0
};
static
const
WCHAR
szTwo
[]
=
{
'2'
,
0
};
UINT
rc
;
UINT
rc
;
LPWSTR
level
;
LPWSTR
level
;
level
=
load_dynamic_property
(
package
,
szUILevel
,
NULL
);
level
=
msi_dup_property
(
package
,
szUILevel
);
MSI_SetPropertyW
(
package
,
szUILevel
,
szTwo
);
MSI_SetPropertyW
(
package
,
szUILevel
,
szTwo
);
package
->
script
->
InWhatSequence
|=
SEQUENCE_EXEC
;
package
->
script
->
InWhatSequence
|=
SEQUENCE_EXEC
;
...
...
dlls/msi/action.h
View file @
062ad505
...
@@ -251,7 +251,7 @@ extern UINT ACTION_RegisterMIMEInfo(MSIPACKAGE *package);
...
@@ -251,7 +251,7 @@ extern UINT ACTION_RegisterMIMEInfo(MSIPACKAGE *package);
/* Helpers */
/* Helpers */
extern
DWORD
deformat_string
(
MSIPACKAGE
*
package
,
LPCWSTR
ptr
,
WCHAR
**
data
);
extern
DWORD
deformat_string
(
MSIPACKAGE
*
package
,
LPCWSTR
ptr
,
WCHAR
**
data
);
extern
WCHAR
*
load_dynamic_stringW
(
MSIRECORD
*
row
,
INT
index
);
extern
WCHAR
*
load_dynamic_stringW
(
MSIRECORD
*
row
,
INT
index
);
extern
LPWSTR
load_dynamic_property
(
MSIPACKAGE
*
package
,
LPCWSTR
prop
,
UINT
*
rc
);
extern
LPWSTR
msi_dup_property
(
MSIPACKAGE
*
package
,
LPCWSTR
prop
);
extern
LPWSTR
resolve_folder
(
MSIPACKAGE
*
package
,
LPCWSTR
name
,
BOOL
source
,
extern
LPWSTR
resolve_folder
(
MSIPACKAGE
*
package
,
LPCWSTR
name
,
BOOL
source
,
BOOL
set_prop
,
MSIFOLDER
**
folder
);
BOOL
set_prop
,
MSIFOLDER
**
folder
);
extern
MSICOMPONENT
*
get_loaded_component
(
MSIPACKAGE
*
package
,
LPCWSTR
Component
);
extern
MSICOMPONENT
*
get_loaded_component
(
MSIPACKAGE
*
package
,
LPCWSTR
Component
);
...
...
dlls/msi/custom.c
View file @
062ad505
...
@@ -184,7 +184,7 @@ UINT ACTION_CustomAction(MSIPACKAGE *package,LPCWSTR action, BOOL execute)
...
@@ -184,7 +184,7 @@ UINT ACTION_CustomAction(MSIPACKAGE *package,LPCWSTR action, BOOL execute)
static
const
WCHAR
szActionData
[]
=
{
static
const
WCHAR
szActionData
[]
=
{
'C'
,
'u'
,
's'
,
't'
,
'o'
,
'm'
,
'A'
,
'c'
,
't'
,
'i'
,
'o'
,
'n'
,
'D'
,
'a'
,
't'
,
'a'
,
0
};
'C'
,
'u'
,
's'
,
't'
,
'o'
,
'm'
,
'A'
,
'c'
,
't'
,
'i'
,
'o'
,
'n'
,
'D'
,
'a'
,
't'
,
'a'
,
0
};
static
const
WCHAR
szBlank
[]
=
{
0
};
static
const
WCHAR
szBlank
[]
=
{
0
};
LPWSTR
actiondata
=
load_dynamic_property
(
package
,
action
,
NULL
);
LPWSTR
actiondata
=
msi_dup_property
(
package
,
action
);
if
(
actiondata
)
if
(
actiondata
)
MSI_SetPropertyW
(
package
,
szActionData
,
actiondata
);
MSI_SetPropertyW
(
package
,
szActionData
,
actiondata
);
else
else
...
@@ -667,13 +667,12 @@ static UINT HANDLE_CustomType50(MSIPACKAGE *package, LPCWSTR source,
...
@@ -667,13 +667,12 @@ static UINT HANDLE_CustomType50(MSIPACKAGE *package, LPCWSTR source,
WCHAR
*
deformated
;
WCHAR
*
deformated
;
WCHAR
*
cmd
;
WCHAR
*
cmd
;
INT
len
;
INT
len
;
UINT
prc
;
static
const
WCHAR
spc
[]
=
{
' '
,
0
};
static
const
WCHAR
spc
[]
=
{
' '
,
0
};
memset
(
&
si
,
0
,
sizeof
(
STARTUPINFOW
));
memset
(
&
si
,
0
,
sizeof
(
STARTUPINFOW
));
memset
(
&
info
,
0
,
sizeof
(
PROCESS_INFORMATION
));
memset
(
&
info
,
0
,
sizeof
(
PROCESS_INFORMATION
));
prop
=
load_dynamic_property
(
package
,
source
,
&
prc
);
prop
=
msi_dup_property
(
package
,
source
);
if
(
!
prop
)
if
(
!
prop
)
return
ERROR_SUCCESS
;
return
ERROR_SUCCESS
;
...
@@ -707,10 +706,7 @@ static UINT HANDLE_CustomType50(MSIPACKAGE *package, LPCWSTR source,
...
@@ -707,10 +706,7 @@ static UINT HANDLE_CustomType50(MSIPACKAGE *package, LPCWSTR source,
return
ERROR_SUCCESS
;
return
ERROR_SUCCESS
;
}
}
prc
=
process_handle
(
package
,
type
,
info
.
hThread
,
info
.
hProcess
,
action
,
return
process_handle
(
package
,
type
,
info
.
hThread
,
info
.
hProcess
,
action
,
NULL
);
NULL
);
return
prc
;
}
}
static
UINT
HANDLE_CustomType34
(
MSIPACKAGE
*
package
,
LPCWSTR
source
,
static
UINT
HANDLE_CustomType34
(
MSIPACKAGE
*
package
,
LPCWSTR
source
,
...
...
dlls/msi/dialog.c
View file @
062ad505
...
@@ -628,7 +628,7 @@ static LPWSTR msi_get_checkbox_value( msi_dialog *dialog, LPCWSTR prop )
...
@@ -628,7 +628,7 @@ static LPWSTR msi_get_checkbox_value( msi_dialog *dialog, LPCWSTR prop )
if
(
ret
)
if
(
ret
)
return
ret
;
return
ret
;
ret
=
load_dynamic_property
(
dialog
->
package
,
prop
,
NULL
);
ret
=
msi_dup_property
(
dialog
->
package
,
prop
);
if
(
ret
&&
!
ret
[
0
]
)
if
(
ret
&&
!
ret
[
0
]
)
{
{
HeapFree
(
GetProcessHeap
(),
0
,
ret
);
HeapFree
(
GetProcessHeap
(),
0
,
ret
);
...
@@ -799,7 +799,7 @@ static UINT msi_dialog_edit_control( msi_dialog *dialog, MSIRECORD *rec )
...
@@ -799,7 +799,7 @@ static UINT msi_dialog_edit_control( msi_dialog *dialog, MSIRECORD *rec )
prop
=
MSI_RecordGetString
(
rec
,
9
);
prop
=
MSI_RecordGetString
(
rec
,
9
);
if
(
prop
)
if
(
prop
)
control
->
property
=
strdupW
(
prop
);
control
->
property
=
strdupW
(
prop
);
val
=
load_dynamic_property
(
dialog
->
package
,
control
->
property
,
NULL
);
val
=
msi_dup_property
(
dialog
->
package
,
control
->
property
);
SetWindowTextW
(
control
->
hwnd
,
val
);
SetWindowTextW
(
control
->
hwnd
,
val
);
HeapFree
(
GetProcessHeap
(),
0
,
val
);
HeapFree
(
GetProcessHeap
(),
0
,
val
);
return
ERROR_SUCCESS
;
return
ERROR_SUCCESS
;
...
@@ -1041,7 +1041,7 @@ static UINT msi_dialog_maskedit_control( msi_dialog *dialog, MSIRECORD *rec )
...
@@ -1041,7 +1041,7 @@ static UINT msi_dialog_maskedit_control( msi_dialog *dialog, MSIRECORD *rec )
msi_control
*
control
;
msi_control
*
control
;
LPCWSTR
prop
;
LPCWSTR
prop
;
mask
=
load_dynamic_property
(
dialog
->
package
,
pidt
,
NULL
);
mask
=
msi_dup_property
(
dialog
->
package
,
pidt
);
if
(
!
mask
)
if
(
!
mask
)
{
{
ERR
(
"PIDTemplate is empty
\n
"
);
ERR
(
"PIDTemplate is empty
\n
"
);
...
@@ -1082,7 +1082,7 @@ static UINT msi_dialog_maskedit_control( msi_dialog *dialog, MSIRECORD *rec )
...
@@ -1082,7 +1082,7 @@ static UINT msi_dialog_maskedit_control( msi_dialog *dialog, MSIRECORD *rec )
if
(
prop
)
if
(
prop
)
{
{
val
=
load_dynamic_property
(
dialog
->
package
,
prop
,
NULL
);
val
=
msi_dup_property
(
dialog
->
package
,
prop
);
if
(
val
)
if
(
val
)
{
{
msi_maskedit_set_text
(
info
,
val
);
msi_maskedit_set_text
(
info
,
val
);
...
@@ -1448,7 +1448,7 @@ static LRESULT msi_dialog_oncreate( HWND hwnd, LPCREATESTRUCTW cs )
...
@@ -1448,7 +1448,7 @@ static LRESULT msi_dialog_oncreate( HWND hwnd, LPCREATESTRUCTW cs )
dialog
->
attributes
=
MSI_RecordGetInteger
(
rec
,
6
);
dialog
->
attributes
=
MSI_RecordGetInteger
(
rec
,
6
);
text
=
MSI_RecordGetString
(
rec
,
7
);
text
=
MSI_RecordGetString
(
rec
,
7
);
dialog
->
default_font
=
load_dynamic_property
(
dialog
->
package
,
df
,
NULL
);
dialog
->
default_font
=
msi_dup_property
(
dialog
->
package
,
df
);
deformat_string
(
dialog
->
package
,
text
,
&
title
);
deformat_string
(
dialog
->
package
,
text
,
&
title
);
SetWindowTextW
(
hwnd
,
title
);
SetWindowTextW
(
hwnd
,
title
);
...
...
dlls/msi/events.c
View file @
062ad505
...
@@ -235,7 +235,7 @@ static UINT ControlEvent_AddSource(MSIPACKAGE* package, LPCWSTR argument,
...
@@ -235,7 +235,7 @@ static UINT ControlEvent_AddSource(MSIPACKAGE* package, LPCWSTR argument,
static
UINT
ControlEvent_SetTargetPath
(
MSIPACKAGE
*
package
,
LPCWSTR
argument
,
static
UINT
ControlEvent_SetTargetPath
(
MSIPACKAGE
*
package
,
LPCWSTR
argument
,
msi_dialog
*
dialog
)
msi_dialog
*
dialog
)
{
{
LPWSTR
path
=
load_dynamic_property
(
package
,
argument
,
NULL
);
LPWSTR
path
=
msi_dup_property
(
package
,
argument
);
UINT
r
;
UINT
r
;
/* failure to set the path halts the executing of control events */
/* failure to set the path halts the executing of control events */
r
=
MSI_SetTargetPathW
(
package
,
argument
,
path
);
r
=
MSI_SetTargetPathW
(
package
,
argument
,
path
);
...
...
dlls/msi/files.c
View file @
062ad505
...
@@ -529,7 +529,7 @@ static UINT ready_media_for_file(MSIPACKAGE *package, MSIFILE *file,
...
@@ -529,7 +529,7 @@ static UINT ready_media_for_file(MSIPACKAGE *package, MSIFILE *file,
last_path
=
strdupW
(
source
);
last_path
=
strdupW
(
source
);
*
(
strrchrW
(
last_path
,
'\\'
)
+
1
)
=
0
;
*
(
strrchrW
(
last_path
,
'\\'
)
+
1
)
=
0
;
path
=
load_dynamic_property
(
package
,
cszSourceDir
,
NULL
);
path
=
msi_dup_property
(
package
,
cszSourceDir
);
MsiSourceListAddMediaDiskW
(
package
->
ProductCode
,
NULL
,
MsiSourceListAddMediaDiskW
(
package
->
ProductCode
,
NULL
,
MSIINSTALLCONTEXT_USERMANAGED
,
MSICODE_PRODUCT
,
count
,
MSIINSTALLCONTEXT_USERMANAGED
,
MSICODE_PRODUCT
,
count
,
...
@@ -837,7 +837,7 @@ static UINT ITERATE_DuplicateFiles(MSIRECORD *row, LPVOID param)
...
@@ -837,7 +837,7 @@ static UINT ITERATE_DuplicateFiles(MSIRECORD *row, LPVOID param)
if
(
!
dest_path
)
if
(
!
dest_path
)
{
{
/* try a Property */
/* try a Property */
dest_path
=
load_dynamic_property
(
package
,
destkey
,
NULL
);
dest_path
=
msi_dup_property
(
package
,
destkey
);
if
(
!
dest_path
)
if
(
!
dest_path
)
{
{
FIXME
(
"Unable to get destination folder, try AppSearch properties
\n
"
);
FIXME
(
"Unable to get destination folder, try AppSearch properties
\n
"
);
...
...
dlls/msi/format.c
View file @
062ad505
...
@@ -219,15 +219,14 @@ static LPWSTR deformat_index(MSIRECORD* record, LPCWSTR key, DWORD* chunk )
...
@@ -219,15 +219,14 @@ static LPWSTR deformat_index(MSIRECORD* record, LPCWSTR key, DWORD* chunk )
static
LPWSTR
deformat_property
(
MSIPACKAGE
*
package
,
LPCWSTR
key
,
DWORD
*
chunk
)
static
LPWSTR
deformat_property
(
MSIPACKAGE
*
package
,
LPCWSTR
key
,
DWORD
*
chunk
)
{
{
UINT
rc
;
LPWSTR
value
;
LPWSTR
value
;
if
(
!
package
)
if
(
!
package
)
return
NULL
;
return
NULL
;
value
=
load_dynamic_property
(
package
,
key
,
&
rc
);
value
=
msi_dup_property
(
package
,
key
);
if
(
rc
==
ERROR_SUCCESS
)
if
(
value
)
*
chunk
=
(
strlenW
(
value
))
*
sizeof
(
WCHAR
);
*
chunk
=
(
strlenW
(
value
))
*
sizeof
(
WCHAR
);
return
value
;
return
value
;
...
...
dlls/msi/helpers.c
View file @
062ad505
...
@@ -96,7 +96,7 @@ UINT build_icon_path(MSIPACKAGE *package, LPCWSTR icon_name,
...
@@ -96,7 +96,7 @@ UINT build_icon_path(MSIPACKAGE *package, LPCWSTR icon_name,
static
const
WCHAR
szFolder
[]
=
static
const
WCHAR
szFolder
[]
=
{
'A'
,
'p'
,
'p'
,
'D'
,
'a'
,
't'
,
'a'
,
'F'
,
'o'
,
'l'
,
'd'
,
'e'
,
'r'
,
0
};
{
'A'
,
'p'
,
'p'
,
'D'
,
'a'
,
't'
,
'a'
,
'F'
,
'o'
,
'l'
,
'd'
,
'e'
,
'r'
,
0
};
SystemFolder
=
load_dynamic_property
(
package
,
szFolder
,
NULL
);
SystemFolder
=
msi_dup_property
(
package
,
szFolder
);
dest
=
build_directory_name
(
3
,
SystemFolder
,
szInstaller
,
package
->
ProductCode
);
dest
=
build_directory_name
(
3
,
SystemFolder
,
szInstaller
,
package
->
ProductCode
);
...
@@ -141,7 +141,7 @@ WCHAR *load_dynamic_stringW(MSIRECORD *row, INT index)
...
@@ -141,7 +141,7 @@ WCHAR *load_dynamic_stringW(MSIRECORD *row, INT index)
return
ret
;
return
ret
;
}
}
LPWSTR
load_dynamic_property
(
MSIPACKAGE
*
package
,
LPCWSTR
prop
,
UINT
*
rc
)
LPWSTR
msi_dup_property
(
MSIPACKAGE
*
package
,
LPCWSTR
prop
)
{
{
DWORD
sz
=
0
;
DWORD
sz
=
0
;
LPWSTR
str
;
LPWSTR
str
;
...
@@ -149,11 +149,8 @@ LPWSTR load_dynamic_property(MSIPACKAGE *package, LPCWSTR prop, UINT* rc)
...
@@ -149,11 +149,8 @@ LPWSTR load_dynamic_property(MSIPACKAGE *package, LPCWSTR prop, UINT* rc)
r
=
MSI_GetPropertyW
(
package
,
prop
,
NULL
,
&
sz
);
r
=
MSI_GetPropertyW
(
package
,
prop
,
NULL
,
&
sz
);
if
(
r
!=
ERROR_SUCCESS
&&
r
!=
ERROR_MORE_DATA
)
if
(
r
!=
ERROR_SUCCESS
&&
r
!=
ERROR_MORE_DATA
)
{
if
(
rc
)
*
rc
=
r
;
return
NULL
;
return
NULL
;
}
sz
++
;
sz
++
;
str
=
HeapAlloc
(
GetProcessHeap
(),
0
,
sz
*
sizeof
(
WCHAR
));
str
=
HeapAlloc
(
GetProcessHeap
(),
0
,
sz
*
sizeof
(
WCHAR
));
r
=
MSI_GetPropertyW
(
package
,
prop
,
str
,
&
sz
);
r
=
MSI_GetPropertyW
(
package
,
prop
,
str
,
&
sz
);
...
@@ -162,8 +159,6 @@ LPWSTR load_dynamic_property(MSIPACKAGE *package, LPCWSTR prop, UINT* rc)
...
@@ -162,8 +159,6 @@ LPWSTR load_dynamic_property(MSIPACKAGE *package, LPCWSTR prop, UINT* rc)
HeapFree
(
GetProcessHeap
(),
0
,
str
);
HeapFree
(
GetProcessHeap
(),
0
,
str
);
str
=
NULL
;
str
=
NULL
;
}
}
if
(
rc
)
*
rc
=
r
;
return
str
;
return
str
;
}
}
...
@@ -264,10 +259,10 @@ LPWSTR resolve_folder(MSIPACKAGE *package, LPCWSTR name, BOOL source,
...
@@ -264,10 +259,10 @@ LPWSTR resolve_folder(MSIPACKAGE *package, LPCWSTR name, BOOL source,
if
(
!
source
)
if
(
!
source
)
{
{
LPWSTR
check_path
;
LPWSTR
check_path
;
check_path
=
load_dynamic_property
(
package
,
cszTargetDir
,
NULL
);
check_path
=
msi_dup_property
(
package
,
cszTargetDir
);
if
(
!
check_path
)
if
(
!
check_path
)
{
{
check_path
=
load_dynamic_property
(
package
,
cszRootDrive
,
NULL
);
check_path
=
msi_dup_property
(
package
,
cszRootDrive
);
if
(
set_prop
)
if
(
set_prop
)
MSI_SetPropertyW
(
package
,
cszTargetDir
,
check_path
);
MSI_SetPropertyW
(
package
,
cszTargetDir
,
check_path
);
}
}
...
@@ -280,10 +275,10 @@ LPWSTR resolve_folder(MSIPACKAGE *package, LPCWSTR name, BOOL source,
...
@@ -280,10 +275,10 @@ LPWSTR resolve_folder(MSIPACKAGE *package, LPCWSTR name, BOOL source,
}
}
else
else
{
{
path
=
load_dynamic_property
(
package
,
cszSourceDir
,
NULL
);
path
=
msi_dup_property
(
package
,
cszSourceDir
);
if
(
!
path
)
if
(
!
path
)
{
{
path
=
load_dynamic_property
(
package
,
cszDatabase
,
NULL
);
path
=
msi_dup_property
(
package
,
cszDatabase
);
if
(
path
)
if
(
path
)
{
{
p
=
strrchrW
(
path
,
'\\'
);
p
=
strrchrW
(
path
,
'\\'
);
...
...
dlls/msi/install.c
View file @
062ad505
...
@@ -678,7 +678,7 @@ LANGID WINAPI MsiGetLanguage(MSIHANDLE hInstall)
...
@@ -678,7 +678,7 @@ LANGID WINAPI MsiGetLanguage(MSIHANDLE hInstall)
if
(
!
package
)
if
(
!
package
)
return
ERROR_INVALID_HANDLE
;
return
ERROR_INVALID_HANDLE
;
buffer
=
load_dynamic_property
(
package
,
szProductLanguage
,
NULL
);
buffer
=
msi_dup_property
(
package
,
szProductLanguage
);
langid
=
atoiW
(
buffer
);
langid
=
atoiW
(
buffer
);
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
HeapFree
(
GetProcessHeap
(),
0
,
buffer
);
...
...
dlls/msi/upgrade.c
View file @
062ad505
...
@@ -68,7 +68,7 @@ static void append_productcode(MSIPACKAGE* package, LPCWSTR action_property,
...
@@ -68,7 +68,7 @@ static void append_productcode(MSIPACKAGE* package, LPCWSTR action_property,
DWORD
len
;
DWORD
len
;
static
const
WCHAR
separator
[]
=
{
';'
,
0
};
static
const
WCHAR
separator
[]
=
{
';'
,
0
};
prop
=
load_dynamic_property
(
package
,
action_property
,
NULL
);
prop
=
msi_dup_property
(
package
,
action_property
);
if
(
prop
)
if
(
prop
)
len
=
strlenW
(
prop
);
len
=
strlenW
(
prop
);
else
else
...
...
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