summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornicm <nicm>2017-04-18 15:44:17 +0000
committernicm <nicm>2017-04-18 15:44:17 +0000
commitfb3c5efa503214b08cae72f89e73ed4eb1bf957c (patch)
tree6364cf5d1f9eb7c6bcdf473d5faf8389b295805a
parentaace1ead1e711412e4be0287972a389248583ad6 (diff)
Add a format for number of bytes writtent to client, useful for debugging.
-rw-r--r--format.c1
-rw-r--r--tmux.11
-rw-r--r--tmux.h1
-rw-r--r--tty.c1
4 files changed, 4 insertions, 0 deletions
diff --git a/format.c b/format.c
index 5844a6ab..633be101 100644
--- a/format.c
+++ b/format.c
@@ -1154,6 +1154,7 @@ format_defaults_client(struct format_tree *ft, struct client *c)
format_add_tv(ft, "client_created", &c->creation_time);
format_add_tv(ft, "client_activity", &c->activity_time);
+ format_add(ft, "client_written", "%zu", tty->written);
name = server_client_get_key_table(c);
if (strcmp(c->keytable->name, name) == 0)
diff --git a/tmux.1 b/tmux.1
index 07a31d7d..d4330d18 100644
--- a/tmux.1
+++ b/tmux.1
@@ -3521,6 +3521,7 @@ The following variables are available, where appropriate:
.It Li "client_tty" Ta "" Ta "Pseudo terminal of client"
.It Li "client_utf8" Ta "" Ta "1 if client supports utf8"
.It Li "client_width" Ta "" Ta "Width of client"
+.It Li "client_written" Ta "" Ta "Bytes written to client"
.It Li "command" Ta "" Ta "Name of command in use, if any"
.It Li "command_list_name" Ta "" Ta "Command name if listing commands"
.It Li "command_list_alias" Ta "" Ta "Command alias if listing commands"
diff --git a/tmux.h b/tmux.h
index 482f3c74..c472a763 100644
--- a/tmux.h
+++ b/tmux.h
@@ -1043,6 +1043,7 @@ struct tty {
struct evbuffer *in;
struct event event_out;
struct evbuffer *out;
+ size_t written;
struct termios tio;
diff --git a/tty.c b/tty.c
index 2776f145..14906cc3 100644
--- a/tty.c
+++ b/tty.c
@@ -427,6 +427,7 @@ tty_add(struct tty *tty, const char *buf, size_t len)
evbuffer_add(tty->out, buf, len);
log_debug("%s: %.*s", c->name, (int)len, (const char *)buf);
+ tty->written += len;
if (tty_log_fd != -1)
write(tty_log_fd, buf, len);