I have an application failing to communicate at 19200, but working at 57600. I've got about 40k of logs of DCB dumps for a case it fails (19200 baud) and the case it succeeds (57600 baud). If anyone wants I can post them here.
But...
Any particular reason why GetCommState doesn't first zero the passed structure, or set the size with sizeof()?
If an app fails to zero its supplied DCB structure for a Get, and Windows *does* then code might work for Windows and fail for Wine? I don't have a windows box to test this though.
It also strikes me that ignored DCB elements from a Set operation should be stored in a map associated with the underlying ports so the values can be retrieved on the next Get call and the 'Set' will appear to have succeeded, don't know if anyone would like to comment on that.
-biff.
___________________________________________________________ Yahoo! Messenger - NEW crystal clear PC to PC calling worldwide with voicemail http://uk.messenger.yahoo.com