[7/9] msi: Implement the UnregisterMIMEInfo standard action.

Hans Leidekker hans at codeweavers.com
Tue Apr 27 02:41:45 CDT 2010


On Tue, 2010-04-27 at 08:55 +0200, Vincent Pelletier wrote:

> Backtrace:
> =>0 0x7ecf3750 ACTION_UnregisterMIMEInfo+0x260(package=0x131f00) 
> [/home/vincent/git/wine/dlls/msi/classes.c:1516] in msi (0x0033f998)
>   1 0x7ecda25e ACTION_HandleStandardAction+0x1dd(package=<is not available>, 
> action="UnregisterMIMEInfo", rc=0x33f9cc, force=0x0001) 
> [/home/vincent/git/wine/dlls/msi/action.c:7089] in msi (0x0033f9e8)
> 
> Note: of-by-one line count, as I added a WARN to log mime->Extension value, 
> which confirms the problem (3rd line):
> 
> warn:msi:ACTION_UnregisterMIMEInfo Unregistering MIME type L"application/pdf"
> warn:msi:ACTION_UnregisterMIMEInfo Failed to delete MIME key 2
> warn:msi:ACTION_UnregisterMIMEInfo mime->Extension = (nil)
> 
> I believe the mime->InstallMe condition is too relaxed, as it does check mime-
> >Extension, but with || (reindented code, for wordwrap):
> > +  mime->InstallMe = (mime->InstallMe ||
> > +                    (mime->Class && mime->Class->Installed) ||
> > +                    (mime->Extension && mime->Extension->Installed));

Well, the Extension_ column of the MIME table is not nullable, so
mime->Extension should not be null here. Can you send me the msi file?





More information about the wine-devel mailing list