Skip to content

Commit

Permalink
logind: Don't try to emit a change signal for the 'Sessions' property (
Browse files Browse the repository at this point in the history
…#5211)

The 'Sessions' property for both org.freedesktop.login1.User and
org.freedesktop.login1.Seat is marked as EmitsChangedSignal(false).
Trying to emit a change signal that includes the 'Sessions' property
leads to the signal not being sent at all.

Fixes #5210.
  • Loading branch information
afrantzis authored and keszybz committed Feb 3, 2017
1 parent 2341216 commit 7d049e3
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 8 deletions.
2 changes: 0 additions & 2 deletions src/login/logind-seat.c
Expand Up @@ -541,8 +541,6 @@ int seat_attach_session(Seat *s, Session *session) {
LIST_PREPEND(sessions_by_seat, s->sessions, session);
seat_assign_position(s, session);

seat_send_changed(s, "Sessions", NULL);

/* On seats with VTs, the VT logic defines which session is active. On
* seats without VTs, we automatically activate new sessions. */
if (!seat_has_vts(s))
Expand Down
9 changes: 3 additions & 6 deletions src/login/logind-session.c
Expand Up @@ -586,12 +586,10 @@ int session_start(Session *s) {

/* Send signals */
session_send_signal(s, true);
user_send_changed(s->user, "Sessions", "Display", NULL);
user_send_changed(s->user, "Display", NULL);
if (s->seat) {
if (s->seat->active == s)
seat_send_changed(s->seat, "Sessions", "ActiveSession", NULL);
else
seat_send_changed(s->seat, "Sessions", NULL);
seat_send_changed(s->seat, "ActiveSession", NULL);
}

return 0;
Expand Down Expand Up @@ -698,11 +696,10 @@ int session_finalize(Session *s) {
seat_set_active(s->seat, NULL);

seat_save(s->seat);
seat_send_changed(s->seat, "Sessions", NULL);
}

user_save(s->user);
user_send_changed(s->user, "Sessions", "Display", NULL);
user_send_changed(s->user, "Display", NULL);

return 0;
}
Expand Down

0 comments on commit 7d049e3

Please sign in to comment.