[Portland-bugs] [Bug 19382] New: xdg-screensaver: Race in suspend/ resume can lead to process leak

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sat Jan 3 15:08:52 PST 2009


http://bugs.freedesktop.org/show_bug.cgi?id=19382

           Summary: xdg-screensaver: Race in suspend/resume can lead to
                    process leak
           Product: Portland
           Version: 1.0
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: xdg-utils
        AssignedTo: portland-bugs at lists.freedesktop.org
        ReportedBy: ben at decadent.org.uk


Created an attachment (id=21646)
 --> (http://bugs.freedesktop.org/attachment.cgi?id=21646)
proposed fix

In xdg-screensaver, do_resume() and track_window() both call
cleanup_suspend() to remove the tracking process from the status file.
cleanup_suspend() removes the process using a grep -v for the window
id.  This means there is a race condition after the first removal
where a new tracking process can be created and then removed from the
status file while it's still active.

I think this can be fixed by either (1) looking for the process id
in the status file or (2) removing one of the
calls to cleanup_suspend().

The attached patch does (1).


-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the Portland-bugs mailing list