http://bugs.winehq.org/show_bug.cgi?id=18271
Summary: MSI creates incompatible msi file in a specific case of create table Product: Wine Version: 1.1.20 Platform: PC-x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: enhancement Priority: P5 Component: msi AssignedTo: wine-bugs@winehq.org ReportedBy: tijnema@gmail.com
Created an attachment (id=20797) --> (http://bugs.winehq.org/attachment.cgi?id=20797) Test application for this bug (source and binary)
I was doing some testing on MSI, and figured that when using only 1 column in a table with only 1 character, wine's msi implementation fails to create a correct msi file.
When opening the msi file with orca, orca crashes after selecting the table. Using native dll override for msi.dll, a correct msi file is generated.
The query I am using is CREATE TABLE testTable (b INT PRIMARY KEY b)
Test application built in VS2008 (source and binary) is attached, it needs vcredist package from microsoft to run.
http://bugs.winehq.org/show_bug.cgi?id=18271
Matijn Woudt tijnema@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|enhancement |minor
http://bugs.winehq.org/show_bug.cgi?id=18271
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, testcase
http://bugs.winehq.org/show_bug.cgi?id=18271
Hans Leidekker hans@meelstraat.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |hans@meelstraat.net
--- Comment #1 from Hans Leidekker hans@meelstraat.net 2010-05-29 14:47:43 --- Would you be able to translate that test into a Wine conformance test?
http://bugs.winehq.org/show_bug.cgi?id=18271
--- Comment #2 from Matijn Woudt tijnema@gmail.com 2010-05-29 17:35:31 --- The attached test application is not more than a test case. I could write a test for it, but I don't know how to check if the created .msi is correct (I used orca, which gave me an error when I tried to open .msi created by wine).
http://bugs.winehq.org/show_bug.cgi?id=18271
--- Comment #3 from Hans Leidekker hans@meelstraat.net 2010-05-30 02:57:10 --- You could perhaps export the table with MsiDatabaseExport and compare the resulting file. Or use MsiViewGetColumnInfo to demonstrate the difference.
http://bugs.winehq.org/show_bug.cgi?id=18271
--- Comment #4 from Matijn Woudt tijnema@gmail.com 2010-06-01 10:13:35 --- Created an attachment (id=28491) --> (http://bugs.winehq.org/attachment.cgi?id=28491) Test
I have created the test, but it doesn't reveal the real problem of this bug report, but another bug in MsiViewGetColumnInfo.
MsiViewGetColumnInfo is fails here, even when using a query like "CREATE TABLE `blah` (`foo` CHAR(72) NOT NULL PRIMARY KEY `foo`)" which doesn't give corrupted msi output.
I think this bug should be fixed before I can write a real testcase for this bug.
http://bugs.winehq.org/show_bug.cgi?id=18271
--- Comment #5 from Hans Leidekker hans@meelstraat.net 2010-06-02 02:14:02 --- Created an attachment (id=28510) --> (http://bugs.winehq.org/attachment.cgi?id=28510) Expanded test
Could be a different bug or another manifestation of the same bug. Just leave those tests in, marked todo_wine, so we won't forget.
If you close the create view and then open a select query on the new table like in this patch you should be able to retrieve the column info.
http://bugs.winehq.org/show_bug.cgi?id=18271
Matijn Woudt tijnema@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #20797|0 |1 is obsolete| | Attachment #28491|0 |1 is obsolete| |
--- Comment #6 from Matijn Woudt tijnema@gmail.com 2010-06-02 18:23:10 --- Created an attachment (id=28528) --> (http://bugs.winehq.org/attachment.cgi?id=28528) New testcases
I extended the testcase a little more. This shows that the table is fine before MsiCommitDatabase. The problem lies in MsiCommitDatabase then I suppose.
Is this patch ready for wine-patches in your opinion?
http://bugs.winehq.org/show_bug.cgi?id=18271
--- Comment #7 from Hans Leidekker hans@meelstraat.net 2010-06-03 01:29:03 ---
Is this patch ready for wine-patches in your opinion?
Yes, please submit it.
http://bugs.winehq.org/show_bug.cgi?id=18271
--- Comment #8 from Hans Leidekker hans@meelstraat.net 2010-06-03 02:23:38 --- Two minor things though, why call MsiDatabaseCommit right after MsiOpenDatabase? I think that's redundant. And you should close the record handle obtained from MsiViewGetColumnInfo.
http://bugs.winehq.org/show_bug.cgi?id=18271
--- Comment #9 from Matijn Woudt tijnema@gmail.com 2010-06-03 08:30:17 --- Ok, got that fixed and have sent it to wine-patches.
http://bugs.winehq.org/show_bug.cgi?id=18271
butraxz@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |butraxz@gmail.com
--- Comment #10 from butraxz@gmail.com 2012-05-21 14:14:06 CDT --- This bug has been marked as fixed two years ago. Shouldnt this be closed ?
http://bugs.winehq.org/show_bug.cgi?id=18271
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #11 from Austin English austinenglish@gmail.com 2012-05-21 14:29:18 CDT --- (In reply to comment #10)
This bug has been marked as fixed two years ago. Shouldnt this be closed ?
Well, the comment said the patch was adjusted, not that the bug was fixed. The testcases are still marked as todo_wine, so I'm going to say it's not fixed.
https://bugs.winehq.org/show_bug.cgi?id=18271
--- Comment #12 from Austin English austinenglish@gmail.com --- Still a todo_wine in 1.7.25.
https://bugs.winehq.org/show_bug.cgi?id=18271
super_man@post.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |super_man@post.com
--- Comment #13 from super_man@post.com --- patching file dlls/msi/tests/db.c Hunk #1 succeeded at 9695 with fuzz 1 (offset 850 lines). Hunk #2 FAILED at 9002. 1 out of 2 hunks FAILED -- saving rejects to file dlls/msi/tests/db.c.rej
new testcases partly apply.
wine 1.7.51
https://bugs.winehq.org/show_bug.cgi?id=18271
Hans Leidekker hans@meelstraat.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED Fixed by SHA1| |c959e38625ee3c72310f91e995f | |fdad19b21e450
--- Comment #14 from Hans Leidekker hans@meelstraat.net --- This was fixed a long time ago with c959e38625ee3c72310f91e995ffdad19b21e450.
https://bugs.winehq.org/show_bug.cgi?id=18271
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #15 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 3.17.