Comment 20 for bug 478274

Revision history for this message
David Decotigny (daviddecotigny) wrote :

Reopening this issue. I am afraid there is a real problem here...

As I understand by looking at the code (mainly ck-manager.c:load_seats_from_dir()), the fact that there is an invalid regular file in /etc/ConsoleKit/seats.d/ has only the following impacts:
 - the first correct seat created will have id "Seat2" instead of "Seat1"
 - there is one more iteration in the while loop in ck-manager.c:load_seats_from_dir()
But I don't see anything else.

So how is it possible that we get:
   Matched x11-display-device /dev/tty7 to /org/freedesktop/ConsoleKit/Session1
when there is no .svn directory... and we don't get anything when there is a .svn dir ? Is it because there is an internal error that prevents Seat2 from being visible for the matching routines whereas Seat1 is visible ? Is there something hard-wired for "Seat1" (in config files or code) ? Is this a race condition because of the additional iteration in the while loop (highly improbable).

Besides, perhaps a suggestion (?): in ck_seat.c:ck_seat_new_from_file(), add calls g_key_file_free() where relevant ?