#ifdef _WIN32
typedef struct {
+ CharDriverState *chr;
int max_size;
HANDLE hcom, hrecv, hsend;
OVERLAPPED orecv, osend;
win_chr_close2(s);
}
-static int win_chr_init(WinCharState *s, const char *filename)
+static int win_chr_init(WinCharState *s, CharDriverState *chr, const char *filename)
{
COMMCONFIG comcfg;
COMMTIMEOUTS cto = { 0, 0, 0, 0, 0};
fprintf(stderr, "Failed ClearCommError\n");
goto fail;
}
+ s->chr = chr;
qemu_add_polling_cb(win_chr_poll, s);
return 0;
chr->chr_write = win_chr_write;
chr->chr_close = win_chr_close;
- if (win_chr_init(s, filename) < 0) {
+ if (win_chr_init(s, chr, filename) < 0) {
free(s);
free(chr);
return NULL;