IPC: do not bail on events from unknown file descriptors ref. #433

The natural cycle for dwm-msg is that:
   - the client registers
   - the client sends a message
   - a response is sent back
   - the client deregisters

There is a race condition such that a new client may end up with the same
file descriptor as another command that is deregistering, resulting in a
message to come through from a file descriptor that is not registered.

The handling of this situation is that the IPC patch will log:

   Got event from unknown fd 7, ptr 0x7, u32 7, u64 7 with events 17

before gracefully stopping (exiting) dwm.

The consequence of the error itself seems benign and the proposal here is
to allow dwm to keep running despite not being able to process the dwm-msg
command successfully.
This commit is contained in:
bakkeby 2024-08-01 14:56:48 +02:00
parent f4258747be
commit 36cbcf53a2

1
dwm.c
View File

@ -3313,7 +3313,6 @@ run(void)
event_fd, events[i].data.ptr, events[i].data.u32, event_fd, events[i].data.ptr, events[i].data.u32,
events[i].data.u64); events[i].data.u64);
fprintf(stderr, " with events %d\n", events[i].events); fprintf(stderr, " with events %d\n", events[i].events);
return;
} }
} }
} }