Segfault. Conformance Test/Patch in Cabinet.dll
A follow up to the cabinet patch we released before hand. It works perfectly in windows/cl. When its in the wine tree, gcc doesn't like it as much. cabinet_fdi.c: In function `TestCreate': cabinet_fdi.c:263: warning: passing arg 3 of `FDICreate' from incompatible pointer type Running it = segfault. WINEDEBUG=+all wine dlls/cabinet/tests/cabinet_test.exe.so results in the attached debug trace, which doesn't help (me) much. Anyhow, point being, it works in Windows, dies in Wine, but I'm not sure that its a Wine error. Can anyone offer any suggestions/fixes? -- Thank you, Rizwan Kassim http://www.geekymedia.com - GPL code, How-To guides and more. "There's no such thing as non-lethal shaving damage with a sword!" -- Scott Martin Octal is the way God meant programmers to count - the thumbs are parity bits. "The first creature we encountered (and this is the god's honest truth) was a Duck with a +4 hotdog cart. For some reason, we never found out why, this Duck's sole purpose in life was to go out around smasing his cart into adventurers until they agreed to buy a hotdog from him. Once doing so, you were prompty told to roll a save vs poison (food poisoning) or die."
Le jeu 10/03/2005 à 20:04, Rizwan Kassim a écrit :
A follow up to the cabinet patch we released before hand. It works perfectly in windows/cl.
When its in the wine tree, gcc doesn't like it as much. cabinet_fdi.c: In function `TestCreate': cabinet_fdi.c:263: warning: passing arg 3 of `FDICreate' from incompatible pointer type
I guess tvfs_open should be defined as INT_PTR __cdecl tvfs_open(char *fname, int flags, int mode); You might be able to keep the const char *, not sure. Or maybe it's the const which poses problem. Which one is the default if none is specified: cdecl or stdcall?
Running it = segfault.
Might be caused by the calling convention of tvfs_open. There's always the possibility that what I'm saying is nonsense, too. Vincent
My previous post was fixed with some advice. Attached is a conformance test for wine/dlls/cabinet. I now have a cabinet test that compiles perfectly on windows and wine, runs perfectly in windows but segfaults in wine. Attached is WINEDEBUG=+all. Is this because of some error in my test or some flaw in Wine? -- Thank you, Rizwan Kassim http://www.geekymedia.com - GPL code, How-To guides and more. "There's no such thing as non-lethal shaving damage with a sword!" -- Scott Martin Octal is the way God meant programmers to count - the thumbs are parity bits.
participants (2)
-
Rizwan Kassim -
Vincent Béron