if (GetLastError() == ERROR_IO_PENDING) {
DEBUG("Waiting for write to complete");
GetOverlappedResult(port->hdl, &port->write_ovl, &bytes_written, TRUE);
if (GetLastError() == ERROR_IO_PENDING) {
DEBUG("Waiting for write to complete");
GetOverlappedResult(port->hdl, &port->write_ovl, &bytes_written, TRUE);