swc

Unnamed repository; edit this file 'description' to name the repository.
git clone git://git.nihaljere.xyz/swc
Log | Files | Refs | README | LICENSE

commit 58da3b4e2e41a6700845df364c936acd3731b0ba
parent 6518eda75c01f09e643378f82ad6aaf8188e9347
Author: Michael Forney <mforney@mforney.org>
Date:   Mon, 20 Jan 2014 15:27:47 -0800

evdev_device: Move add_event_sources to initialize

Diffstat:
Mlibswc/evdev_device.c | 21++++++++++++---------
Mlibswc/evdev_device.h | 3---
Mlibswc/seat.c | 1-
3 files changed, 12 insertions(+), 13 deletions(-)

diff --git a/libswc/evdev_device.c b/libswc/evdev_device.c @@ -27,6 +27,7 @@ #include "evdev_device.h" #include "event.h" +#include "internal.h" #include "launch.h" #include "seat.h" #include "util.h" @@ -211,6 +212,15 @@ struct swc_evdev_device * swc_evdev_device_new if (!(device->path = strdup(path))) goto error2; + device->source = wl_event_loop_add_fd + (swc.event_loop, device->fd, WL_EVENT_READABLE, handle_data, device); + + if (!device->source) + { + ERROR("Failed to add event source\n"); + goto error3; + } + DEBUG("Adding device %s\n", libevdev_get_name(device->dev)); device->handler = handler; @@ -235,6 +245,8 @@ struct swc_evdev_device * swc_evdev_device_new return device; + error3: + libevdev_free(device->dev); error2: libevdev_free(device->dev); error1: @@ -252,15 +264,6 @@ void swc_evdev_device_destroy(struct swc_evdev_device * device) free(device); } -void swc_evdev_device_add_event_sources(struct swc_evdev_device * device, - struct wl_event_loop * event_loop) -{ - DEBUG("Adding event source for %s\n", libevdev_get_name(device->dev)); - device->source - = wl_event_loop_add_fd(event_loop, device->fd, WL_EVENT_READABLE, - handle_data, device); -} - bool swc_evdev_device_reopen(struct swc_evdev_device * device) { close(device->fd); diff --git a/libswc/evdev_device.h b/libswc/evdev_device.h @@ -82,9 +82,6 @@ struct swc_evdev_device * swc_evdev_device_new void swc_evdev_device_destroy(struct swc_evdev_device * device); -void swc_evdev_device_add_event_sources(struct swc_evdev_device * device, - struct wl_event_loop * event_loop); - bool swc_evdev_device_reopen(struct swc_evdev_device * device); #endif diff --git a/libswc/seat.c b/libswc/seat.c @@ -206,7 +206,6 @@ static void add_device(struct udev_device * udev_device) } wl_list_insert(&seat.devices, &device->link); - swc_evdev_device_add_event_sources(device, swc.event_loop); } static void add_devices()