msi: Release msi_custom_action_info when no longer needed.

This commit is contained in:
Hib Eris 2009-06-21 19:48:11 +02:00 committed by Alexandre Julliard
parent 65ac206194
commit e86ebd75b0
1 changed files with 9 additions and 5 deletions

View File

@ -888,7 +888,9 @@ static UINT HANDLE_CustomType1(MSIPACKAGE *package, LPCWSTR source,
info = do_msidbCustomActionTypeDll( package, type, tmp_file, target, action );
return wait_thread_handle( info );
r = wait_thread_handle( info );
release_custom_action_data( info );
return r;
}
static UINT HANDLE_CustomType2(MSIPACKAGE *package, LPCWSTR source,
@ -1167,8 +1169,6 @@ static DWORD ACTION_CallScript( const GUID *guid )
else
ERR("failed to create handle for %p\n", info->package );
if (info->type & msidbCustomActionTypeAsync &&
info->type & msidbCustomActionTypeContinue)
release_custom_action_data( info );
return S_OK;
@ -1226,13 +1226,16 @@ static msi_custom_action_info *do_msidbCustomActionTypeScript(
static UINT HANDLE_CustomType37_38(MSIPACKAGE *package, LPCWSTR source,
LPCWSTR target, const INT type, LPCWSTR action)
{
UINT r;
msi_custom_action_info *info;
TRACE("%s %s\n", debugstr_w(source), debugstr_w(target));
info = do_msidbCustomActionTypeScript( package, type, target, NULL, action );
return wait_thread_handle( info );
r = wait_thread_handle( info );
release_custom_action_data( info );
return r;
}
static UINT HANDLE_CustomType5_6(MSIPACKAGE *package, LPCWSTR source,
@ -1277,6 +1280,7 @@ static UINT HANDLE_CustomType5_6(MSIPACKAGE *package, LPCWSTR source,
info = do_msidbCustomActionTypeScript( package, type, bufferw, target, action );
r = wait_thread_handle( info );
release_custom_action_data( info );
done:
msi_free(bufferw);