Bug 15424

Summary: Infinite loop in paint.c with compiz 0.7.2
Product: xorg Reporter: Sylvain Pasche <sylvain.pasche>
Component: App/compizAssignee: David Reveman <reveman>
Status: RESOLVED WORKSFORME QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: erkinbah
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Sylvain Pasche 2008-04-09 09:10:34 UTC
I sometimes get Compiz to freeze when doing the following (I also reported it on https://bugs.launchpad.net/ubuntu/+source/compiz/+bug/148073):

1) Open Firefox in fullscreen on one screen
2) Open Totem in fullscreen on the other screen

The the UI is frozen and if I connect to the system with ssh, compiz.real is running at 100% cpu.

I could connect from another machine and look around in gdb. I found an infinite loop in paint.c, function paintOutputRegion()

The loop:

    /* detect occlusions */
    for (w = (*walk.last) (screen); w; w = (*walk.prev) (w))
    {
   ...
     }

... is never escaped. I didn't check if this was fixed in a newer release (I'm using the 0.7.2 version from Ubuntu Hardy). I can provide more information if needed.
Comment 1 Danny Baumann 2008-04-15 04:30:37 UTC
This seems like an incorrect window walker interface usage to me, thus a plugin bug.
Can you please disable the following plugins, each one at a time, and try if this improves the situation:
- Animation
- Cube
- 3D
Comment 2 Erkin Bahceci 2008-04-21 21:44:48 UTC
Can you check if this issue persists with the latest compiz fusion plugins-main?
Comment 3 Danny Baumann 2008-09-04 02:31:58 UTC
No issues at all here in git master.
Please reopen if problem persists.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.