Well, with your patch it doesn't seem to crash. There is also no list corruption, as far as I could test it :)
Regards, Iskren 2011/3/13 Kristian Høgsberg <k...@bitplanet.net> > On Fri, Mar 11, 2011 at 7:32 PM, Iskren Chernev > <iskren.cher...@gmail.com> wrote: > > Hello, > > I found a bug and fixed it with the patch :) > > to reproduce: > > Hi, > > I wasn't able to reproduce it immediately, but I know that there's a > crasher in there somewhere. I think the real fix is the patch I've > attached, could you give it a try and see if it fixes it for you? > > thanks, > Kristian > > > run compositor on top of x11 > > repeat > > run flower > > drag & drop it a little > > move the pointer in and out of the compositor/flower > > Ctrl+C the flower client > > it would break eventually > > problem: > > I found that the linked list surface->destroy_listener_list got corrupted > at > > some point (it was not circular any more, strange next/prev etc), which > > causes the crash. > > solution: > > The problem was in wl_list_remove -- when you erase an element, you don't > > mark it as 'erased', by setting prev/next to NULL for example. Then if > you > > erase it again the list becomes corrupt. I nullified the prev/next and > check > > in the begining of wl_list_remove for not-in-list elements and just > ignore > > them. That seems to fix it. > > Regards, > > Iskren > > _______________________________________________ > > wayland-devel mailing list > > wayland-devel@lists.freedesktop.org > > http://lists.freedesktop.org/mailman/listinfo/wayland-devel > > > > >
_______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel