Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
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-cw
Commits
1767989b
Commit
1767989b
authored
Nov 13, 2006
by
Mike McCormack
Committed by
Alexandre Julliard
Nov 13, 2006
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msi: Fail if we can't write out a temporary file.
parent
2a46821b
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
11 deletions
+15
-11
custom.c
dlls/msi/custom.c
+15
-11
No files found.
dlls/msi/custom.c
View file @
1767989b
...
@@ -528,11 +528,13 @@ static UINT HANDLE_CustomType1(MSIPACKAGE *package, LPCWSTR source,
...
@@ -528,11 +528,13 @@ static UINT HANDLE_CustomType1(MSIPACKAGE *package, LPCWSTR source,
LPCWSTR
target
,
const
INT
type
,
LPCWSTR
action
)
LPCWSTR
target
,
const
INT
type
,
LPCWSTR
action
)
{
{
WCHAR
tmp_file
[
MAX_PATH
];
WCHAR
tmp_file
[
MAX_PATH
];
UINT
r
c
=
ERROR_SUCCESS
;
UINT
r
=
ERROR_SUCCESS
;
BOOL
finished
=
FALSE
;
BOOL
finished
=
FALSE
;
HANDLE
ThreadHandle
;
HANDLE
ThreadHandle
;
store_binary_to_temp
(
package
,
source
,
tmp_file
);
r
=
store_binary_to_temp
(
package
,
source
,
tmp_file
);
if
(
r
!=
ERROR_SUCCESS
)
return
r
;
TRACE
(
"Calling function %s from %s
\n
"
,
debugstr_w
(
target
),
TRACE
(
"Calling function %s from %s
\n
"
,
debugstr_w
(
target
),
debugstr_w
(
tmp_file
));
debugstr_w
(
tmp_file
));
...
@@ -541,18 +543,18 @@ static UINT HANDLE_CustomType1(MSIPACKAGE *package, LPCWSTR source,
...
@@ -541,18 +543,18 @@ static UINT HANDLE_CustomType1(MSIPACKAGE *package, LPCWSTR source,
{
{
static
const
WCHAR
dot
[]
=
{
'.'
,
0
};
static
const
WCHAR
dot
[]
=
{
'.'
,
0
};
strcatW
(
tmp_file
,
dot
);
strcatW
(
tmp_file
,
dot
);
}
}
ThreadHandle
=
do_msidbCustomActionTypeDll
(
package
,
tmp_file
,
target
);
ThreadHandle
=
do_msidbCustomActionTypeDll
(
package
,
tmp_file
,
target
);
r
c
=
process_handle
(
package
,
type
,
ThreadHandle
,
NULL
,
action
,
&
finished
);
r
=
process_handle
(
package
,
type
,
ThreadHandle
,
NULL
,
action
,
&
finished
);
if
(
!
finished
)
if
(
!
finished
)
track_tempfile
(
package
,
tmp_file
,
tmp_file
);
track_tempfile
(
package
,
tmp_file
,
tmp_file
);
else
else
DeleteFileW
(
tmp_file
);
DeleteFileW
(
tmp_file
);
return
r
c
;
return
r
;
}
}
static
UINT
HANDLE_CustomType2
(
MSIPACKAGE
*
package
,
LPCWSTR
source
,
static
UINT
HANDLE_CustomType2
(
MSIPACKAGE
*
package
,
LPCWSTR
source
,
...
@@ -566,12 +568,14 @@ static UINT HANDLE_CustomType2(MSIPACKAGE *package, LPCWSTR source,
...
@@ -566,12 +568,14 @@ static UINT HANDLE_CustomType2(MSIPACKAGE *package, LPCWSTR source,
WCHAR
*
deformated
;
WCHAR
*
deformated
;
WCHAR
*
cmd
;
WCHAR
*
cmd
;
static
const
WCHAR
spc
[]
=
{
' '
,
0
};
static
const
WCHAR
spc
[]
=
{
' '
,
0
};
UINT
prc
=
ERROR_SUCCESS
;
UINT
r
=
ERROR_SUCCESS
;
BOOL
finished
=
FALSE
;
BOOL
finished
=
FALSE
;
memset
(
&
si
,
0
,
sizeof
(
STARTUPINFOW
));
memset
(
&
si
,
0
,
sizeof
(
STARTUPINFOW
));
store_binary_to_temp
(
package
,
source
,
tmp_file
);
r
=
store_binary_to_temp
(
package
,
source
,
tmp_file
);
if
(
r
!=
ERROR_SUCCESS
)
return
r
;
deformat_string
(
package
,
target
,
&
deformated
);
deformat_string
(
package
,
target
,
&
deformated
);
...
@@ -579,7 +583,7 @@ static UINT HANDLE_CustomType2(MSIPACKAGE *package, LPCWSTR source,
...
@@ -579,7 +583,7 @@ static UINT HANDLE_CustomType2(MSIPACKAGE *package, LPCWSTR source,
if
(
deformated
)
if
(
deformated
)
len
+=
strlenW
(
deformated
);
len
+=
strlenW
(
deformated
);
cmd
=
msi_alloc
(
sizeof
(
WCHAR
)
*
len
);
cmd
=
msi_alloc
(
sizeof
(
WCHAR
)
*
len
);
strcpyW
(
cmd
,
tmp_file
);
strcpyW
(
cmd
,
tmp_file
);
...
@@ -605,15 +609,15 @@ static UINT HANDLE_CustomType2(MSIPACKAGE *package, LPCWSTR source,
...
@@ -605,15 +609,15 @@ static UINT HANDLE_CustomType2(MSIPACKAGE *package, LPCWSTR source,
}
}
msi_free
(
cmd
);
msi_free
(
cmd
);
prc
=
process_handle
(
package
,
type
,
info
.
hThread
,
info
.
hProcess
,
action
,
r
=
process_handle
(
package
,
type
,
info
.
hThread
,
info
.
hProcess
,
action
,
&
finished
);
&
finished
);
if
(
!
finished
)
if
(
!
finished
)
track_tempfile
(
package
,
tmp_file
,
tmp_file
);
track_tempfile
(
package
,
tmp_file
,
tmp_file
);
else
else
DeleteFileW
(
tmp_file
);
DeleteFileW
(
tmp_file
);
return
prc
;
return
r
;
}
}
static
UINT
HANDLE_CustomType17
(
MSIPACKAGE
*
package
,
LPCWSTR
source
,
static
UINT
HANDLE_CustomType17
(
MSIPACKAGE
*
package
,
LPCWSTR
source
,
...
...
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