OpenSolaris

Printable Version Enter a New Search
Bug ID 6531358
Synopsis xscreensaver fails to properly lock the screen during a typing break
State 10-Fix Delivered:Verified (Fix available in build)
Category:Subcategory gnome:screensaver
Keywords
Responsible Engineer Mahmood Ali
Reported Against vermillion_56
Duplicate Of
Introduced In solaris_nevada
Commit to Fix snv_75
Fixed In snv_75
Release Fixed solaris_nevada(snv_75)
Related Bugs 6580862
Submit Date 6-March-2007
Last Update Date 29-September-2007
Description
If xscreensaver tries to lock the screen during a Gnome typing break
it fails to grab the keyboard and gives up. However, it still manages
to grab the mouse and doesn't appear to release it. The result it that
the screen contents are visible and the keyboard working as input for
the current window but the mouse doesn't work.

Steps to reproduce:

1. Set typing break (Gnome preferences, Keyboard, typing break) to
   something short (eg 1 minute and 1 minute). The "postpone" feature
   doesn't appear to make a difference.
2. Wait until the typing break is about to cut in (flashing icon
   in the Gnome panel).
3. Set the screen to lock in 30 seconds:
   $ sleep 30; xscreensaver-command -lock
4. Let the typing break cut in
5. After 30 seconds the mouse cursor disappears
6. After 1 minute the typing break ends

Result: Keyboard activity in the current window works, the mouse is
        not visible or apparently working.

Resolution: Lock the screen again

If xscreensaver is run in verbose mode the following messages are
seen. This is from a dual-head Sun Ray:

- With "postpone" feature enabled

xscreensaver: LOCK ClientMessage received; activating and locking.
going to lock screen A
Xlib:  extension "XFree86-Misc" missing on display ":15".
xscreensaver: blanking screen at Tue Mar  6 10:26:45 2007.
--> init_file_changed()
xscreensaver: mouse is on screen 1 of 2
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: couldn't grab keyboard!  (AlreadyGrabbed)
xscreensaver: 1: removing focus from 0xeb659f / RevertToParent.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: couldn't grab keyboard!  (AlreadyGrabbed)
xscreensaver: 1: grabbing mouse on 0x3a... GrabSuccess.
xscreensaver: unable to grab keyboard or mouse!  Blanking aborted.
Xlib:  extension "XFree86-Misc" missing on display ":15".
xscreensaver: awaiting idleness.

- Without "postpone" feature enabled

xscreensaver: LOCK ClientMessage received; activating and locking.
going to lock screen A
Xlib:  extension "XFree86-Misc" missing on display ":15".
xscreensaver: blanking screen at Tue Mar  6 10:33:40 2007.
--> init_file_changed()
xscreensaver: mouse is on screen 1 of 2
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: couldn't grab keyboard!  (AlreadyGrabbed)
xscreensaver: 1: removing focus from 0xeb659f / RevertToParent.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: 1: grabbing keyboard on 0x3a... AlreadyGrabbed.
xscreensaver: couldn't grab keyboard!  (AlreadyGrabbed)
xscreensaver: 1: grabbing mouse on 0x3a... GrabSuccess.
xscreensaver: unable to grab keyboard or mouse!  Blanking aborted.
Xlib:  extension "XFree86-Misc" missing on display ":15".
xscreensaver: awaiting idleness.

This is a particular problem for Sun Ray users as pulling the card out
of the Sun Ray typically locks the screen. Once a typing break cuts in
the instinctive reaction is to remove the card and walk away for a
break. On return the screen can be viewed and keyboard used (in the
current window) without unlocking the screen simply by re-inserting
the card.

If a sufficiently long typing break is taken xscreensaver starts again
and now locks the screen successfully.
Work Around
To regain mouse control lock and unlock the screen.
Locking the screen from the keyboard is typically:

    Ctrl-Alt-L

Otherwise for carded Sun Ray sessions remove and re-insert the card.
Comments
N/A