summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornicm <nicm>2015-11-18 09:22:29 +0000
committernicm <nicm>2015-11-18 09:22:29 +0000
commitca5e6bf5f2f11796bf2bdbe136ba534e46b2e86e (patch)
tree4e81da2de7edd0489b285f88ba60c08d2564475b
parentd0505fd04256247a5c8d56888ff19a9b6da80cea (diff)
Don't update activity time twice for new sessions, and add some logging.
-rw-r--r--session.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/session.c b/session.c
index cbaadcee..deb29d18 100644
--- a/session.c
+++ b/session.c
@@ -131,10 +131,6 @@ session_create(const char *name, int argc, char **argv, const char *path,
memcpy(s->tio, tio, sizeof *s->tio);
}
- if (gettimeofday(&s->creation_time, NULL) != 0)
- fatal("gettimeofday failed");
- session_update_activity(s, &s->creation_time);
-
s->sx = sx;
s->sy = sy;
@@ -151,6 +147,8 @@ session_create(const char *name, int argc, char **argv, const char *path,
}
RB_INSERT(sessions, &sessions, s);
+ log_debug("new session %s $%u", s->name, s->id);
+
if (gettimeofday(&s->creation_time, NULL) != 0)
fatal("gettimeofday failed");
session_update_activity(s, &s->creation_time);
@@ -265,6 +263,10 @@ session_update_activity(struct session *s, struct timeval *from)
else
memcpy(&s->activity_time, from, sizeof s->activity_time);
+ log_debug("session %s activity %lld.%06d (last %lld.%06d)", s->name,
+ (long long)s->activity_time.tv_sec, (int)s->activity_time.tv_usec,
+ (long long)last->tv_sec, (int)last->tv_usec);
+
if (evtimer_initialized(&s->lock_timer))
evtimer_del(&s->lock_timer);
else