That can't be used for a test case, for a test case I, or most likely
someone elsewho has the ability and the time has to write code under
dlls/msi/tests/db.c and make a program in windows to re-illustrate this bug.
From: "Jason Green" <[EMAIL PROTECTED]>
To: "EA Durbin" <[EMAIL PROTECTED]>
CC: [EMAIL PROTECTED], [EMAIL PROTECTED], wine-devel@winehq.org
Subject: Re: FW: RE: My 1.0 wish list
Date: Sat, 3 Jun 2006 12:02:15 -0400
On 6/3/06, EA Durbin <[EMAIL PROTECTED]> wrote:
This problem in MSI spans a multitude of bugs.
ATI demo(Rendering With Natural Light ) - bug # 4712?
I noticed yesterday that just about every ATI Demo had similar
installer problems. Just try a few from here if you need some quick
test cases:
http://www.ati.com/developer/demos.html
Thanks, and good luck!
Index: dlls/msi/files.c
===================================================================
RCS file: /home/wine/wine/dlls/msi/files.c,v
retrieving revision 1.37
diff -u -p -r1.37 files.c
--- dlls/msi/files.c 23 May 2006 12:48:16 -0000 1.37
+++ dlls/msi/files.c 3 Jun 2006 16:34:07 -0000
@@ -387,7 +387,7 @@ static UINT ready_media_for_file( MSIPAC
'`','L','a','s','t','S','e','q','u','e','n','c','e','`',0};
LPCWSTR cab, volume;
DWORD sz;
- INT seq;
+ INT seq, diskId;
LPCWSTR prompt;
MSICOMPONENT *comp = file->Component;
@@ -399,6 +399,9 @@ static UINT ready_media_for_file( MSIPAC
}
mi->count ++;
+
+ TRACE("DEBUG OF SELECT * FROM `MEDIA` WHERE `LastSequence` >= %i ORDER BY `LastSequence` \n", file->Sequence);
+
row = MSI_QueryGetRecord(package->db, ExecSeqQuery, file->Sequence);
if (!row)
{
@@ -408,10 +411,16 @@ static UINT ready_media_for_file( MSIPAC
seq = MSI_RecordGetInteger(row,2);
mi->last_sequence = seq;
+ diskId = MSI_RecordGetInteger(row,1);
volume = MSI_RecordGetString(row, 5);
prompt = MSI_RecordGetString(row, 3);
+ cab = MSI_RecordGetString(row,4);
+ TRACE(" Last Sequence returned is: %i \n", seq );
+ TRACE(" DiskId returned is: %i \n", diskId );
+ TRACE(" CAB returned is: %s \n", debugstr_w(cab) );
+
msi_free(mi->last_path);
mi->last_path = NULL;
@@ -432,7 +441,6 @@ static UINT ready_media_for_file( MSIPAC
return rc;
}
- cab = MSI_RecordGetString(row,4);
if (cab)
{
TRACE("Source is CAB %s\n",debugstr_w(cab));