Lines Matching defs:s1
768 static int elect_display_compare(Session *s1, Session *s2) {
779 /* Calculate the partial order relationship between s1 and s2,
780 * returning < 0 if s1 is preferred as the user’s ‘primary session’,
781 * 0 if s1 and s2 are equally preferred or incomparable, or > 0 if s2
784 * s1 or s2 may be NULL. */
785 if (!s1 && !s2)
788 if ((s1 == NULL) != (s2 == NULL))
789 return (s1 == NULL) - (s2 == NULL);
791 if (s1->stopping != s2->stopping)
792 return s1->stopping - s2->stopping;
794 if ((s1->class != SESSION_USER) != (s2->class != SESSION_USER))
795 return (s1->class != SESSION_USER) - (s2->class != SESSION_USER);
797 if ((s1->type == _SESSION_TYPE_INVALID) != (s2->type == _SESSION_TYPE_INVALID))
798 return (s1->type == _SESSION_TYPE_INVALID) - (s2->type == _SESSION_TYPE_INVALID);
800 if (s1->type != s2->type)
801 return type_ranks[s1->type] - type_ranks[s2->type];