Notes |
|
|
Could you please attempt to capture such a crash in a debugger so that we have some clue as to what is going on when it crashes? |
|
|
(0002094)
|
Stefan
|
2019-09-10 18:26
|
|
Hi, I'm having the same exact problem. I'm running a custom Linux distribution with kernel version 4.19.59, curl version 7.65.3, glib version 2.61.3, gtk+2 version 2.24.32, and netsurf 3.9.
I ran netsurf-gtk with the -v option (not much information there), and got the attached backtrace. I build everything with "-g -O2". Not sure how to get netsurf to include more information in the backtrace, though.
Let me know if you need more info. |
|
|
(0002095)
|
Stefan
|
2019-09-11 21:35
|
|
I did some poking around the file where this Seg fault occurs, and noticed that on line 839 (from git) g_timeout_add is being called with the 3rd argument = FALSE. However, glib documentation states this is a gpointer. So essentially, the user_data bit is being set to 0x0, not a pointer to FALSE, as it looks like it should.
A very hacky way to solve this problem would be to stop a boolean value (FALSE or TRUE) in the gpointer, and case it to bool in the callback function. Something like:
return nsgtk_download_update ((bool)user_data); |
|
|
(0002096)
|
Stefan
|
2019-09-11 22:58
|
|
I can confirm that this is the problem. The very trivial patch attached fixes it for me. |
|
|
|
resolved in a slightly different way to that suggested and cleaned up the code for future improvement. |
|
|
|
Thankyou for reporting this issue.
We believe this is fixed in the 3.10 release.
If this is not the case please feel free to reopen the issue with additional details. |
|