mirror of
https://github.com/tmux/tmux.git
synced 2024-12-04 19:58:48 +00:00
Some extra logging to show why tmux might exit.
This commit is contained in:
parent
bfaa885f10
commit
58b796608f
@ -61,12 +61,12 @@ cmd_kill_session_exec(struct cmd *self, struct cmdq_item *item)
|
||||
RB_FOREACH_SAFE(sloop, sessions, &sessions, stmp) {
|
||||
if (sloop != s) {
|
||||
server_destroy_session(sloop);
|
||||
session_destroy(sloop);
|
||||
session_destroy(sloop, __func__);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
server_destroy_session(s);
|
||||
session_destroy(s);
|
||||
session_destroy(s, __func__);
|
||||
}
|
||||
return (CMD_RETURN_NORMAL);
|
||||
}
|
||||
|
@ -333,7 +333,7 @@ server_destroy_session_group(struct session *s)
|
||||
else {
|
||||
TAILQ_FOREACH_SAFE(s, &sg->sessions, gentry, s1) {
|
||||
server_destroy_session(s);
|
||||
session_destroy(s);
|
||||
session_destroy(s, __func__);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -399,7 +399,7 @@ server_check_unattached(void)
|
||||
if (!(s->flags & SESSION_UNATTACHED))
|
||||
continue;
|
||||
if (options_get_number (s->options, "destroy-unattached"))
|
||||
session_destroy(s);
|
||||
session_destroy(s, __func__);
|
||||
}
|
||||
}
|
||||
|
||||
|
3
server.c
3
server.c
@ -249,7 +249,7 @@ server_send_exit(void)
|
||||
}
|
||||
|
||||
RB_FOREACH_SAFE(s, sessions, &sessions, s1)
|
||||
session_destroy(s);
|
||||
session_destroy(s, __func__);
|
||||
}
|
||||
|
||||
/* Update socket execute permissions based on whether sessions are attached. */
|
||||
@ -347,6 +347,7 @@ server_signal(int sig)
|
||||
{
|
||||
int fd;
|
||||
|
||||
log_debug("%s: %s", __func__, strsignal(sig));
|
||||
switch (sig) {
|
||||
case SIGTERM:
|
||||
server_exit = 1;
|
||||
|
@ -178,7 +178,7 @@ session_create(const char *prefix, const char *name, int argc, char **argv,
|
||||
if (argc >= 0) {
|
||||
wl = session_new(s, NULL, argc, argv, path, cwd, idx, cause);
|
||||
if (wl == NULL) {
|
||||
session_destroy(s);
|
||||
session_destroy(s, __func__);
|
||||
return (NULL);
|
||||
}
|
||||
session_select(s, RB_ROOT(&s->windows)->idx);
|
||||
@ -229,11 +229,11 @@ session_free(__unused int fd, __unused short events, void *arg)
|
||||
|
||||
/* Destroy a session. */
|
||||
void
|
||||
session_destroy(struct session *s)
|
||||
session_destroy(struct session *s, const char *from)
|
||||
{
|
||||
struct winlink *wl;
|
||||
|
||||
log_debug("session %s destroyed", s->name);
|
||||
log_debug("session %s destroyed (%s)", s->name, from);
|
||||
s->curw = NULL;
|
||||
|
||||
RB_REMOVE(sessions, &sessions, s);
|
||||
@ -419,7 +419,7 @@ session_detach(struct session *s, struct winlink *wl)
|
||||
session_group_synchronize_from(s);
|
||||
|
||||
if (RB_EMPTY(&s->windows)) {
|
||||
session_destroy(s);
|
||||
session_destroy(s, __func__);
|
||||
return (1);
|
||||
}
|
||||
return (0);
|
||||
|
2
tmux.h
2
tmux.h
@ -2295,7 +2295,7 @@ struct session *session_find_by_id(u_int);
|
||||
struct session *session_create(const char *, const char *, int, char **,
|
||||
const char *, const char *, struct environ *,
|
||||
struct termios *, int, u_int, u_int, char **);
|
||||
void session_destroy(struct session *);
|
||||
void session_destroy(struct session *, const char *);
|
||||
void session_add_ref(struct session *, const char *);
|
||||
void session_remove_ref(struct session *, const char *);
|
||||
int session_check_name(const char *);
|
||||
|
Loading…
Reference in New Issue
Block a user