xdg-screensaver blocks unmounting with sleep 50

Bug #1051197 reported by Rorzik on 2012-09-15
30
This bug affects 6 people
Affects Status Importance Assigned to Milestone
xdg-utils (Ubuntu)
Undecided
Unassigned

Bug Description

Description: Ubuntu 12.04.1 LTS
Release: 12.04
xdg-utils: Installed: 1.1.0~rc1-2ubuntu6

If using a program that calls the screensaver_suspend_loop() in xdg-screensaver (for example, vlc does this), the "sleep 50" in the last line of that function blocks unmounting of file systems containing the current directory at the time the function was called.

This is easy enough to bypass, while preserving the same functionality, if we can simply change the last line of that function from:

(while [ -f "$screensaver_file" ]; do $*; sleep 50; done) > /dev/null 2> /dev/null &

to:

(cd /; while [ -f "$screensaver_file" ]; do $*; sleep 50; done) > /dev/null 2> /dev/null &

Changing to the root directory prevents it from blocking the unmount. And this shouldn't affect anything else since that line is a background loop.

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in xdg-utils (Ubuntu):
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers