On 25 November 2011 17:53, David Fries <da...@fries.net> wrote:
> I took another look and did some tests.  DeadPipeCleanup is called
> atexit().  With my patch and -transient, the Swallow flag Kill is

The code is clear about this point.

> causing the X-server to close to the connection to that client, the
> flag Close is doing something less forcefully, but in both cases
> stalonetray and xclock have terminated when the button panel closes.

Yes.

> Compared to the previous XDestroyWindow behavior where the programs in
> the tray are killed, the stalonetray window is destroyed (but it keeps
> on running because it's too stupid to exit).

See previous comments on this.

> From what I can tell exiting the loop normally is doing the right
> thing with Close and Kill, and unswallowing NoClose windows correctly.
> What about about adding a XDestroyWindow call at the end of
> DeadPipeCleanup?  Would that be sufficient for forcefully destroying
> anything left after the other cleanup ran?

Nope, no more so than what is currently happening.   Also, you're not
considering enough of the b->flags in this which would need to be
checked before doing anything in DeadPipeCleanup().

Until I look in to this in more detail, I'm perhaps more inclined to
think the applications in question need fixing, not FvwmButtons, but
we'll see.  :)

-- Thomas Adam

Reply via email to