On 25 July 2010 09:47, Troels Henriksen <at...@sigkill.dk> wrote: > Martin Kopta <mar...@kopta.eu> writes: > >> Hi everybody, >> >> I use Tabbed (0.3) with Surf (0.4.1) and there is one issue I would like to >> discuss. ... >> I expect that the selected one window (tab) will be closed. In most cases >> it >> is exactly so, but sometimes it happens, that many more tabs disapear. >> Since >> there is no way to bring back tabs in Tabbed, this bug is very >> anonying. > > This is because the same Surf process is responsible for multiple > Windows. The display part of Surf is programmed in a very brittle way, > and often dies due to X11 BadWindow errors (which can be fixed by > installing an error handler that ignores those) and mysterious segfaults > within the Flash plugin and some asynchronous-loading part of Webkit > (which I'm not sure how to fix). A basic problem is that Surf windows > are destroyed without first unregistering signal handlers, so you easily > end up with handlers trying to use a halfway-destroyed window object > (this happens very often if you close a window that is still loading, > due to the way the progress bar works). > > -- > \ Troels > /\ Henriksen
This has been discussed before (http://lists.suckless.org/dev/1006/4579.html), and I've been using a bodged version of surf, which works around the bug by disabling the error handlers when it brings down the window. I haven't used surf for a while _and_ I have no X11 experience so I'm not sure whether it works (haven't tested it thoroughly enough), but I've attached a diff, it should apply cleanly to 0.4.1. Rob.
surf-0.4.1-segfault_fix.diff
Description: plain/text