On Tue, Nov 10, 2009 at 05:51:08PM -0300, Jorge Arellano Cid wrote:
On Mon, Nov 09, 2009 at 08:27:23PM +0100, Johannes Hofmann wrote:
On Mon, Nov 09, 2009 at 03:40:58PM -0300, Jorge Arellano Cid wrote:
On Mon, Nov 09, 2009 at 07:24:45PM +0100, Johannes Hofmann wrote:
On Mon, Nov 09, 2009 at 11:34:36AM -0300, Jorge Arellano Cid wrote:
On Mon, Nov 09, 2009 at 12:05:30PM +0900, furaisanjin wrote:
I dont't know any trigger yet. I just browse pages and occasionally the problem happens. There isn't any specific page either.
The point is we have massive changes in the DPI area, not in dillo. If you trigger it while browsing HTTP, DPI is out of the equation. If it happens with HTTPS, DPI participates.
I'd expect you not being able to trigger the bug by using the file dpi, but if you can with plain HTTP it's a surprise.
Not 100% sure if it is the same issue, but I can crash dillo by going to the bookmark page and then keep Ctrl-r pressed so that it reloads continiously. After a while I get a segmentation fault, but no proper stack unfortunately.
Was the crash possible before the DPI changes?
One more thing. There is a file descriptor leak you can see with
diff -r 8535113920b1 src/IO/dpi.c --- a/src/IO/dpi.cgiMon Nov 09 14:22:27 2009 -0300 +++ b/src/IO/dpi.cgiMon Nov 09 20:25:34 2009 +0100 @@ -90,7 +90,7 @@ static void Dpi_close_fd(int fd) { int st; - +fprintf(stderr, "===> close %d\n", fd); dReturn_if (fd < 0); do st = close(fd); @@ -432,6 +432,7 @@ if ((fd = socket(AF_INET, SOCK_STREAM, 0)) != -1) { ret = fd; } +fprintf(stderr, "===> socket %d\n", fd); return ret; }
Each time one accesses the bookmarks page one fd is leaked. I think there is also some close()'s missing in the error cases.
No FD leak here, the respective FD is closed by IO, although there were a couple of FD leaks elsewhere (fixed in repo).
Yes, problem is gone, nice! Cheers, Johannes