mirror of
https://github.com/netsurf-browser/netsurf
synced 2025-02-08 02:24:41 +03:00
![Vincent Sanders](/assets/img/avatar_default.png)
In utils/nsurl.c the function nsurl__create_from_section() has a section dealing with non-redundant ports (starting line 973). lwc_intern_string() was being called with negative lengths and as it takes a size_t (unsigned) so is getting passed a very large length which causes a segfault. this is supposed to be protected by the flag setting on line 969 however the arithmetic is all *unsigned* so the condition never matches (gdb) p length - (colon - pegs->at + skip) $9 = 18446744073709551608 changing the check arithmetic to be a simple comparison against length prevents this issue and reduces the amount of computation required.
…
…
…
…
…
…
…
-------------------------------------------------------------------------------- NetSurf README -------------------------------------------------------------------------------- This document should help point you at various useful bits of information. Building NetSurf ================== Read the QUICK-START document in the Docs/ directory for instructions. Creating a new port ===================== Look at the existing front ends for example implementations. The framebuffer front end is simplest and most self-contained. Also, you can contact the developers for help: http://www.netsurf-browser.org/contact/ Check out the developer documentation sources listed below too. Further documentation ======================= The Developer section of the web site has loads of info to get you started: http://www.netsurf-browser.org/developers/ General documentation on how NetSurf's code works can be found on the development wiki: http://wiki.netsurf-browser.org/Documentation/ The code style guide is here: http://www.netsurf-browser.org/developers/StyleGuide.pdf
Description
Languages
C
95.4%
C++
1.9%
HTML
0.8%
Makefile
0.6%
Python
0.4%
Other
0.7%