There seems to be a strange problem related to the serial port.
Specifically, when running Delorme AAA MapNGo 4.0, and attempting to use GPS navigation, it is unable to communicate with the GPS device.
On stderr Wine is printing out RtlNtStatusToDOSerr - unable to map 00000102
This only happens when the GPS device is connected and sending data, otherwise no error is printed.
I know that the device is sending, because Minicom will show the data stream from the device. This also leaves out permission problems as both Wine and Minicom are running with the same permissions.
A bit of grepping through the code indicates the likely error code is STATUS_TIMEOUT.
Could it be that the serial I/O routines are incorrectly returning STATUS_TIMEOUT to the calling program when data was read?
Additionally, I have another Windows program that accesses the serial port without problems - could it be that second program is ignoring the timeout error, while the first is not?