http://bugs.winehq.org/show_bug.cgi?id=29168
--- Comment #84 from Jason r6express@yahoo.com 2012-01-09 15:59:49 CST --- (In reply to comment #83)
I have ran the swtor process with trace+winsock,trace+relay, along with my custom socket.c that forces a delay to make sure the 22 byte read occurs synchronously. I found that the same thread doing the read (and the long pause/sleep I coded in) continues on after the read and starts opening up the swtor .ini settings files located in c:\users...\Local Settings\Application Data\SWTOR\swtor\settings. It also opens up the disk cache files also in that dir tree. Eventually the thread ceases to do anything interesting (based on relay output).
The next test I planned to do is to block socket.c from responding back with those 22 bytes to determine if the behavior changed. If it did then that would tell me the swtor process is in fact getting the bytes. I haven't had a chance to run that test.
I also wanted to force that socket read thread to crash/break during the read so I could see what else was happening up the stack. But I am new to Wine and haven't figured out how to make the debugger stop breaking every time it encounters a floating point exception (of which there a boatload when running with winedbg). All those apparently harmless (I say apparently since the program doesn't seem to complain when running with just wine) exceptions make it a hassle to use the debugger.
FYI, the wine output/log file ends up around 5-6GB by the time it gets to messing around with the socket on port 8995.