On Tue, Oct 11, 2011 at 3:22 PM, Hans Leidekker <h...@codeweavers.com> wrote: > >> -static UINT HANDLE_CustomType50(MSIPACKAGE *package, LPCWSTR source, >> +static msi_custom_action_info *HANDLE_CustomType50(MSIPACKAGE *package, >> LPCWSTR source, >> LPCWSTR target, const INT type, LPCWSTR >> action) >> { >> WCHAR *exe, *arg; >> msi_custom_action_info *info; >> >> - if (!(exe = msi_dup_property( package->db, source ))) return >> ERROR_SUCCESS; >> + if (!(exe = msi_dup_property( package->db, source ))) return NULL; > > Are you sure this should be an error? Native might ignore a missing property.
Well, it can't continue with executing the custom action, so it fails (tried this). I will try to add a test for it. >> -static UINT HANDLE_CustomType53_54(MSIPACKAGE *package, LPCWSTR source, >> +static msi_custom_action_info *HANDLE_CustomType53_54(MSIPACKAGE *package, >> LPCWSTR source, >> LPCWSTR target, const INT type, LPCWSTR >> action) >> { >> msi_custom_action_info *info; >> WCHAR *prop; >> - UINT r; >> >> TRACE("%s %s\n", debugstr_w(source), debugstr_w(target)); >> >> prop = msi_dup_property( package->db, source ); >> - if (!prop) return ERROR_SUCCESS; >> + if (!prop) return NULL; > > Same here. I never got script actions working (is there any documentation on this?!?), but I would be really surprised, if it silently drops the action and continues with the installation.