[Fwd: patch for bz 6855]

James Hawkins truiken at gmail.com
Mon Jan 8 13:22:04 CST 2007


On 1/7/07, Neil Marko <nmarko at isyssoft.com> wrote:
> Very sorry, I meant 0.9.28 and I forgot the patch!!!
>
> Hope this helps.
>
> Neil Marko
>
> -------- Original Message --------
> Subject:        patch for bz 6855
> Date:   Sun, 07 Jan 2007 17:42:56 -0500
> From:   Neil Marko <nmarko at isyssoft.com>
> To:     wine-patches at winehq.org
>
>
>
> Hi all:
>
> Sorry that this is not in GIT format.  I do not have the time to learn
> this.  I just wanted to get Off2K installed on 9.2.28.
>
> My determination of this bug is that around version 9.2.20 or so,
> dlls/msi/files.c was rewritten.  This bug seems to come from that.  In
> the routine ACTION_InstallFiles, there is a loop of all the file
> objects.  The first few steps of that loop attempt to detect a media
> change.  That ultimately causes a call to load_media_info.  The select
> statement in load_media_info has a where clause where table column
> LastSequence is greater than the value of the current file.  The problem
> I detected is that what is selected in the first pass through the loop
> is the media for the next sequence (COMCTL.OCX) and not the current
> file.  When a successful select occurs, the value of mi->last_sequence
> is updated from the select row, which is obviously not correct.  When we
> loop eventually to the file structure where we should have a media
> change (COMCTL.OCX), we do not do the media change and then we do not
> extract the compressed file and the install fails.  I solved this by
> simply setting mi->last_sequence to file->Sequence in the loop in
> ACTION_InstallFiles.
>
> It is possible that maybe changing the ">=" to a "=" in the select in
> load_media_info might also solve this but I do not have enough knowledge
> about msi to know if that could cause any other problems.  I think we
> would also have to change the error condition so that not reading rows
> there would not cause a failure.  That seemed like a lot more work!
>
> I eventually successfully installed Off2K on 9.2.28 with this.
> (Eventually since I have only an "upgrade" version of Off2K and
> therefore, some of the registry was not setup correctly.  I made it work.)
>

It would be great if you could add a test for this case to
dlls/msi/tests/install.c.  That way we can verify that the fix is
correct.

Thanks,
James Hawkins



More information about the wine-devel mailing list