Hello all,
For too long a time now, I have been getting annoying freezes when
resizing a window. I've been able to track the problem down to
module_list.c as per the following check:
if (!FD_ISSET(channel, &writeSet))
{
char *name;
name = get_pipe_name(module);
/* Doh! Something has gone wrong - get
* rid of the offender! */
fvwm_msg(
ERR, "FlushMessageQueue",
"Failed to write descriptor to"
" '%s':\n"
"- select rc=%d\n"
"- terminate signal=%c\n",
name, rc, isTerminated ?
'Y' : 'N');
module_kill(module);
return;
}
I would argue such a check is redundant, since the freeze happens as
soon as I start to resize a window, which is stupid since nothing has
gone wrong at the point. Indeed, a simple "return;" at the beginning
of the blocks alleviates the issue -- is this check even relevant?
Kindly,
-- Thomas Adam