[Bug 10514] New: BatteryFormulaRacing: Crash on Unimplemented function wsock32.dll.AcceptEx
http://bugs.winehq.org/show_bug.cgi?id=10514 Summary: BatteryFormulaRacing: Crash on Unimplemented function wsock32.dll.AcceptEx Product: Wine Version: CVS/GIT Platform: PC URL: http://www.batterydrink.com/formularacing/download/Batte ryFormulaRacing.exe OS/Version: Linux Status: UNCONFIRMED Keywords: download Severity: normal Priority: P2 Component: wine-net AssignedTo: wine-bugs(a)winehq.org ReportedBy: xerox_xerox2000(a)yahoo.co.uk Hi, a user submitted this application into the appdb with garbage test results. I tried it, and it crashes/hangs with the the message of the summary. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 --- Comment #1 from Lei Zhang <thestig(a)google.com> 2007-11-20 13:21:48 --- umm, isn't this a dup of bug 9787? -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 Kai Blin <blin(a)gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |DUPLICATE --- Comment #2 from Kai Blin <blin(a)gmx.net> 2007-11-20 13:29:01 --- Yup, marking duplicate. *** This bug has been marked as a duplicate of bug 9787 *** -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 Louis Lenders <xerox_xerox2000(a)yahoo.co.uk> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |UNCONFIRMED Resolution|DUPLICATE | --- Comment #3 from Louis Lenders <xerox_xerox2000(a)yahoo.co.uk> 2007-11-20 13:41:06 --- As far as i can see it's not an exact dupe. This app hits the unimplemented function in wsock32.dll, and not in mswsock.dll, like in #9787. I guess they are really the same function, but forwarding didn't work for me, so it's really different bug. Correct me if i'm wrong.... -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 Juan Lang <juan_lang(a)yahoo.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |DUPLICATE --- Comment #4 from Juan Lang <juan_lang(a)yahoo.com> 2007-11-20 15:13:16 --- Well, it's just a stub in mswsock, so I'd still say it's a dup. *** This bug has been marked as a duplicate of bug 9787 *** -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 Anastasius Focht <focht(a)gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |focht(a)gmx.net --- Comment #5 from Anastasius Focht <focht(a)gmx.net> 2007-11-20 15:17:05 --- Hello, --- quote --- I guess they are really the same function, but forwarding didn't work for me, so it's really different bug. Correct me if i'm wrong.... --- quote --- Yes, both wsock32.dll.AcceptEx and wsock32.dll.GetAcceptExSockaddrs are forwarded to MSWSOCK.dll The game imports these two APIs by ordinal. You probably have something like this in place: --- snip wsock32.spec --- 1141 stdcall AcceptEx(long long ptr long long long ptr ptr) mswsock.AcceptEx 1142 stdcall GetAcceptExSockaddrs(ptr long long long ptr ptr ptr ptr) mswsock.GetAcceptExSockaddrs --- snip wsock32.spec --- That currently won't work - even if wine mswsock.dll implements AcceptEx and GetAcceptExSockaddrs. mswsock.dll is not yet loaded at the time the loader tries to resolve the forwarded exports. This is a wine PE loader problem. It needs some kind of multi pass (recursive) to resolve all forwarders. Regards -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 --- Comment #6 from Louis Lenders <xerox_xerox2000(a)yahoo.co.uk> 2007-11-20 15:21:21 --- Ok, i'm not going to reopen this again if you keep it closing, but from the mswsock spec file it reads: @ stdcall AcceptEx(long long ptr long long long ptr ptr) Ok, it only prints a simple fixme, but application don't crash like "Call to unimplemented function AcceptEx" etc when they hit it.
From wsock32.spec: 1141 stub AcceptEx
I get a crash "Call to unimplemented function AcceptEx" I was able to get the app running by just copying the "implementation" for AcceptEx from mswsock to wsock32, and return a simple TRUE instead of FALSE. Anyway, if no-one bothers , i'll stop wasting mine and yours time.... -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 --- Comment #7 from Dmitry Timoshkov <dmitry(a)codeweavers.com> 2007-11-21 03:31:34 --- (In reply to comment #5)
--- snip wsock32.spec --- 1141 stdcall AcceptEx(long long ptr long long long ptr ptr) mswsock.AcceptEx 1142 stdcall GetAcceptExSockaddrs(ptr long long long ptr ptr ptr ptr) mswsock.GetAcceptExSockaddrs --- snip wsock32.spec --- That currently won't work - even if wine mswsock.dll implements AcceptEx and GetAcceptExSockaddrs. mswsock.dll is not yet loaded at the time the loader tries to resolve the forwarded exports. This is a wine PE loader problem. It needs some kind of multi pass (recursive) to resolve all forwarders.
This problem is described in the bug 9420, there is a test case there as well. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 --- Comment #8 from Alexandre Julliard <julliard(a)winehq.org> 2007-11-21 07:51:10 --- Bug 9420 is needed for broken Windows binaries, but there's no reason to require it for builtins, those can be built with correct imports. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 --- Comment #9 from Anastasius Focht <focht(a)gmx.net> 2007-11-21 09:04:30 --- Hello, --- quote ---- Bug 9420 is needed for broken Windows binaries, but there's no reason to require it for builtins, those can be built with correct imports. --- quote ---- Could you elaborate this? In what kind are windows dlls broken when they use forwarders to other than to already loaded dlls? It's pretty standard to move functionality between dlls. The forwarding stuff is actually better than using stub functions in one dll that calls the function in the other dll, it prevents explicit load time dependencies (by the "intermediate" stub). With the forwarder the "new" dll is not loaded unless the app actually asks for the forwarded function from the "old" dll. The game imports API from wsock32.dll (winsock v1) and ws2_32.dll (winsock v2). wsock32.dll has forwarders to mswsock.dll which is not explicitly pulled in (by earlier imports). Even in wine the loader must take care of those "hidden" dll references contained in forwarded APIs. There is no difference between builtins and their native counterparts when it comes to resolving forwarded exports or am I missing something? Regards -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 --- Comment #10 from Alexandre Julliard <julliard(a)winehq.org> 2007-11-21 09:28:09 --- There's no difference, but with builtins since we control the imports we can make sure that the target dll is imported. Yes, we could implement lazy forwards and not import the target dll unless the entry point is used, which is essentially what bug 9420 is about. For builtins there are very few cases where that would make any difference, so it's not worth the trouble; it's only because native dlls now start to use that mechanism that we need to implement it. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 Louis Lenders <xerox_xerox2000(a)yahoo.co.uk> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|DUPLICATE |FIXED --- Comment #11 from Louis Lenders <xerox_xerox2000(a)yahoo.co.uk> 2007-11-21 10:13:03 --- Ok, though this bug has been resolved twice as duplicate, it's actually fixed by Alexandre's commit today http://www.winehq.org/pipermail/wine-cvs/2007-November/038220.html , so i'm resolving it as such. The updating process now goes fine, and the app tries to start (then runs into d3d -bug, but that's different stuff). Thanks for the fix. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 Louis Lenders <xerox_xerox2000(a)yahoo.co.uk> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED --- Comment #12 from Louis Lenders <xerox_xerox2000(a)yahoo.co.uk> 2007-11-21 10:13:36 --- closing -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 Austin English <austinenglish(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Version|CVS/GIT |unspecified -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=10514 Anastasius Focht <focht(a)gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |029a74e56e6d570e3a7e64b99ba | |c886b41c51a09 Version|unspecified |0.9.49. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (1)
-
wine-bugs@winehq.org