Revision 059809e4 hw/usb-hid.c
b/hw/usb-hid.c | ||
---|---|---|
323 | 323 |
return l; |
324 | 324 |
} |
325 | 325 |
|
326 |
static void usb_mouse_handle_reset(USBDevice *dev, int destroy)
|
|
326 |
static void usb_mouse_handle_reset(USBDevice *dev) |
|
327 | 327 |
{ |
328 | 328 |
USBMouseState *s = (USBMouseState *)dev; |
329 | 329 |
|
330 |
if (destroy) { |
|
331 |
qemu_add_mouse_event_handler(NULL, NULL, 0); |
|
332 |
qemu_free(s); |
|
333 |
return; |
|
334 |
} |
|
335 |
|
|
336 | 330 |
s->dx = 0; |
337 | 331 |
s->dy = 0; |
338 | 332 |
s->dz = 0; |
... | ... | |
506 | 500 |
return ret; |
507 | 501 |
} |
508 | 502 |
|
503 |
static void usb_mouse_handle_destroy(USBDevice *dev) |
|
504 |
{ |
|
505 |
USBMouseState *s = (USBMouseState *)dev; |
|
506 |
|
|
507 |
qemu_add_mouse_event_handler(NULL, NULL, 0); |
|
508 |
qemu_free(s); |
|
509 |
} |
|
510 |
|
|
509 | 511 |
USBDevice *usb_tablet_init(void) |
510 | 512 |
{ |
511 | 513 |
USBMouseState *s; |
... | ... | |
519 | 521 |
s->dev.handle_reset = usb_mouse_handle_reset; |
520 | 522 |
s->dev.handle_control = usb_mouse_handle_control; |
521 | 523 |
s->dev.handle_data = usb_mouse_handle_data; |
524 |
s->dev.handle_destroy = usb_mouse_handle_destroy; |
|
522 | 525 |
s->kind = USB_TABLET; |
523 | 526 |
|
524 | 527 |
pstrcpy(s->dev.devname, sizeof(s->dev.devname), "QEMU USB Tablet"); |
... | ... | |
539 | 542 |
s->dev.handle_reset = usb_mouse_handle_reset; |
540 | 543 |
s->dev.handle_control = usb_mouse_handle_control; |
541 | 544 |
s->dev.handle_data = usb_mouse_handle_data; |
545 |
s->dev.handle_destroy = usb_mouse_handle_destroy; |
|
542 | 546 |
s->kind = USB_MOUSE; |
543 | 547 |
|
544 | 548 |
pstrcpy(s->dev.devname, sizeof(s->dev.devname), "QEMU USB Mouse"); |
Also available in: Unified diff