+
+ /* For a two party conversation, if one party has logged out, force flush. */
+ if (nptr) {
+ int user0_is_still_online = 0;
+ int user1_is_still_online = 0;
+ for (i=0; i<nContexts; i++) {
+ if (nptr[i].user.usernum == imptr->usernums[0]) ++user0_is_still_online;
+ if (nptr[i].user.usernum == imptr->usernums[1]) ++user1_is_still_online;
+ }
+ if (imptr->usernums[0] != imptr->usernums[1]) { /* two party conversation */
+ if ((!user0_is_still_online) || (!user1_is_still_online)) {
+ imptr->lastmsg = 0L; /* force flush */
+ }
+ }
+ else { /* one party conversation (yes, people do IM themselves) */
+ if (!user0_is_still_online) {
+ imptr->lastmsg = 0L; /* force flush */
+ }
+ }
+ }
+
+ /* Now test this conversation to see if it qualifies for flushing. */