xkill?

On 10/02/2015 11:12 AM, Jeff Abrahamson wrote:
> I have a window whose process is not responding.  No problem, i3 lets me
> kill windows, so I type that key combination.  Usually it works, but this
> time it doesn't.
>
> My work-around is to use wininfo to find the window id of the dead but
> mapped thing, bc to convert to decimal, use "ps aeww | grep" to find the
> process with that window id in its environment, then send it a kill -15
> (does nothing visible) and then a kill -9 (still mapped, but process now
> shows as defunct).
>
>
> So the* problem* (obviously not critical, since I have a work-around) is
> how could I have avoided the wininfo -> ps -> bc -> kill thing.  Looking at
> the code, it looks like i3's kill window is cmd_kill
> <https://github.com/i3/i3/blob/next/src/commands.c#L1298>() in commands.c.
> (How can that get called with kill_mode_str == "client"?)  The chain is
> then to call tree_close_con
> <https://github.com/i3/i3/blob/next/src/tree.c#L369>() -> tree_close
> <https://github.com/i3/i3/blob/next/src/tree.c#L192>() -> x_window_kill
> <https://github.com/i3/i3/blob/next/src/x.c#L283>() -> one_of {
> xcb_destroy_window
> <http://www.x.org/archive/current/doc/man/man3/xcb_destroy_window.3.xhtml>(),
> xcb_kill_client
> <http://www.x.org/archive/current/doc/man/man3/xcb_kill_client.3.xhtml>() }.
>
> I think to answer that I'l have to run i3 with logging so I can see which
> path it's taking at the end.  And wait for an appropriately hung process.
> My initial hypothesis is that the window supports WM_DELETE_WINDOW but,
> since the proc is hung, it never processes it.
>
>
> Anyway, thanks for any insights.  Clearly this is as much about me learning
> as anything else.
>
> Jeff Abrahamson
> +33 6 24 40 01 57
> +44 7920 594 255    <-- only when I'm in the UK
>
> *http://www.ml-week.com/fr/* <http://www.ml-week.com/fr/>*     2-5 novembre
> 2015*
>
> http://jeff.purple.com/
> http://blog.purple.com/jeff/
>

Reply via email to