[2/2] msi: Implement MSIRUNMODE_MAINTENANCE and MSIRUNMODE_REBOOTATEND for MsiGetMode.

James Hawkins truiken at gmail.com
Thu Feb 18 12:56:17 CST 2010


On Thu, Feb 18, 2010 at 3:47 AM, Hans Leidekker <hans at codeweavers.com> wrote:
> ---
>  dlls/msi/install.c          |   12 +++++++++++-
>  dlls/msi/tests/automation.c |    4 ++--
>  2 files changed, 13 insertions(+), 3 deletions(-)
>
> diff --git a/dlls/msi/install.c b/dlls/msi/install.c
> index 7a71867..6e19863 100644
> --- a/dlls/msi/install.c
> +++ b/dlls/msi/install.c
> @@ -661,6 +661,8 @@ BOOL WINAPI MsiGetMode(MSIHANDLE hInstall, MSIRUNMODE iRunMode)
>     MSIPACKAGE *package;
>     BOOL r = FALSE;
>
> +    TRACE("%d %d\n", hInstall, iRunMode);
> +
>     package = msihandle2msiinfo(hInstall, MSIHANDLETYPE_PACKAGE);
>     if (!package)
>     {
> @@ -706,8 +708,16 @@ BOOL WINAPI MsiGetMode(MSIHANDLE hInstall, MSIRUNMODE iRunMode)
>         r = package->commit_action_running;
>         break;
>
> +    case MSIRUNMODE_MAINTENANCE:
> +        r = msi_get_property_int( package, szInstalled, 0 ) != 0;
> +        break;
> +
> +    case MSIRUNMODE_REBOOTATEND:
> +        r = package->need_reboot;
> +        break;
> +
>     default:
> -        FIXME("%d %d\n", hInstall, iRunMode);
> +        FIXME("unimplemented run mode\n");
>         r = TRUE;
>     }
>

It's nice to see which run mode we're not handling by quickly looking
at the FIXME.  Any reason you removed this?  Keep in mind most general
user logs won't have +msi logging, if any.

-- 
James Hawkins



More information about the wine-devel mailing list