https://bugs.winehq.org/show_bug.cgi?id=39023
--- Comment #25 from Naan wine@sharpner.de --- (In reply to Ken Thomases from comment #23)
Created attachment 52364 [details] Check IOHIDDeviceGetValue() result before using returned value object
Can you please build with this patch and see if it fixes the crash. Also, check whether the controller works properly.
Whether it does or doesn't, please collect a +tid,+seh,+dinput log. I've added some logging for the case where it had been crashing and I'm curious to know what error IOKit is returning when it fails to return a value object.
Basically, the code calls IOHIDDeviceGetValue() for a particular element of the device to get a value object. It then calls IOHIDValueGetIntegerValue() to get the numeric value from that object. It seems the first call was failing and the code didn't check for that. So, when it did the next call, that blew up. But really, I don't know of a good reason why the first call would fail.
Thanks!
So this is what I did: 1. Change the brew formula to apply your patch 2. Reinstall wine 3. Start the game with: WINEDEBUG="+tid,+seh,+dinput" WINELOADER=/usr/local/Cellar/wine/1.7.51/bin/wine.bin wine polboot.exe > debug.log 2>&1 4. Sream: IT WORKS!!!
So thank you very much :D you're the man!
But I will still attach the log file in case you need it for the Wineloader thingy, but unfornately it got almost 400MB, so you gotta download it here again: https://www.dropbox.com/s/en6vrm6ewv7bj5l/debug.tar.gz?dl=0 (10MB tar.gz)
Since you're probably able to read passwords through the dinput debug messages please let me know when you're done so I can remove that file :P