chiark / gitweb /
dbus-loop.c: fix variable initialization
authorKay Sievers <kay@vrfy.org>
Sat, 6 Apr 2013 00:56:04 +0000 (02:56 +0200)
committerKay Sievers <kay@vrfy.org>
Sat, 6 Apr 2013 00:56:04 +0000 (02:56 +0200)
Fix for:
  b92bea5d2a9481de69bb627a7b442a9f58fca43d
Causing:
  systemd-logind[265]: Assertion 'd = event.data.ptr' failed at src/shared/dbus-loop.c:233, function bus_loop_dispatch(). Aborting.

src/shared/dbus-loop.c

index b42ae14..fadbd43 100644 (file)
@@ -45,7 +45,7 @@ typedef struct EpollData {
 
 static dbus_bool_t add_watch(DBusWatch *watch, void *data) {
         EpollData _cleanup_free_ *e = NULL;
-        struct epoll_event ev = { .data.ptr = e };
+        struct epoll_event ev = {};
 
         assert(watch);
 
@@ -58,6 +58,7 @@ static dbus_bool_t add_watch(DBusWatch *watch, void *data) {
         e->is_timeout = false;
 
         ev.events = bus_flags_to_events(watch);
+        ev.data.ptr = e;
 
         if (epoll_ctl(PTR_TO_INT(data), EPOLL_CTL_ADD, e->fd, &ev) < 0) {