--- a/libpurple/protocols/msn/servconn.c Sat Oct 01 18:21:43 2011 +0000 +++ b/libpurple/protocols/msn/servconn.c Sat Oct 01 21:04:35 2011 +0000 @@ -421,8 +421,10 @@ servconn = data; - if (servconn->type == MSN_SERVCONN_NS) - servconn->session->account->gc->last_received = time(NULL); + if (servconn->type == MSN_SERVCONN_NS) { + PurpleConnection *gc = purple_account_get_connection(servconn->session->account); + gc->last_received = time(NULL); + } len = read(servconn->fd, buf, sizeof(buf) - 1); if (len < 0 && errno == EAGAIN)