General serial communications issues

James Courtier-Dutton James at superbug.demon.co.uk
Mon May 31 20:47:01 CDT 2004


I have looked into the wine code now, and async reads from the COM port 
are just broken.

The app calls read, wine sets off the FILE_AsyncReadService, and then 
returns to the app.

FILE_AsyncReadService is called each time a character is received from 
the COM port, and it buffers up the received characters in the 1024 
bytes buffer.

The next time the app calls read, wine sets off a new (now making it 
two) FILE_AsyncReadService, but clears the buffer first, so all the 
characters received from the previous FILE_AsyncReadService get lost.

This is where the input characters are getting lost.

James



More information about the wine-devel mailing list