Commit Graph

138 Commits

Author SHA1 Message Date
Daniel Silverstone 4d1ef3bac4 Add support for retrying timed-out cURL fetches.
This is an attempt to amelioriate the situation found in #2384 where
we see the cURL connect() failing to complete.  Based on the pcap
from the bug log, we believe that RISC OS is likely failing to signal
the completion of the connection to cURL.  As such, cURL times out.

This change permits retries of timed out connections in the hope that
a fresh socket FD might subsequently function correctly.  The defaults
chosen mean that the previous behaviour of 30 seconds before timeout
is reported will remain the same, but in that time we will make 3 separate
attempts to connect the socket.
2015-11-10 21:51:54 +00:00
Vincent Sanders 67ded2a02a This moves message loading out of netsurf_init into each frontend
The translated message loading is dependant on configuration of
resource location in each frontend, additionally they should have the
ability to deal with errors in this loading in a implementation
specific manner.

This also extends the message loading API to be capable of loading
from an inline memory buffer instead of from a file.
2015-06-21 23:27:22 +01:00
Vincent Sanders 335bbe4f52 Move the browser identification and machine info logging.
Previously this information was logged when netsurf_init was called
which might be many lines out output into the log.

It is useful to have this information at the beginning of the log to
make it easily found. In addition it makes netsurf_init less complex.
2015-06-21 23:27:21 +01:00
Vincent Sanders c105738fa3 Change LOG() macro to be varadic
This changes the LOG macro to be varadic removing the need for all
callsites to have double bracketing and allows for future improvement
on how we use the logging macros.

The callsites were changed with coccinelle and the changes checked by
hand. Compile tested for several frontends but not all.

A formatting annotation has also been added which allows the compiler
to check the parameters and types passed to the logging.
2015-05-28 16:08:46 +01:00
Vincent Sanders 6b2676d33f Improve llcache writeout stratagy 2014-11-28 19:17:42 +00:00
Michael Drake 1ea422a9d1 Remove old URL header includes. 2014-10-31 14:41:53 +00:00
Vincent Sanders 02ff3920ce remove unused url_init function 2014-10-31 00:50:32 +00:00
Vincent Sanders d06df231bc Update the core to use the split operations table headers
Second in the series to decouple the core API usage from the frontends.
2014-10-16 22:33:43 +01:00
Vincent Sanders 02bbaa3e88 split version info into its own header and remove unnecessary nesurf.h includes
The netsurf.h header should *only* contain the registration, core
initialisation and finalisation methods. Version information is best
placed in its own header.

Also remove any unneeded inclusion of this header limiting it to
solely the places the relevant API is required.
2014-10-13 15:08:16 +01:00
Vincent Sanders bfc7552d8d remove netsurf_poll callback and netsurf main loop 2014-10-13 01:18:19 +01:00
Vincent Sanders 1b7aa7ffe5 make fetchers scheduled 2014-06-26 19:05:59 +01:00
Vincent Sanders 4b2101ba6a clean up the fetcher factory and improve its API 2014-06-19 18:27:24 +01:00
Vincent Sanders 8e29e517d5 fix disc cache size option to be unsigned 2014-06-09 13:13:59 +01:00
Vincent Sanders a6d3ceae0e Completely re-write web search provider handling 2014-05-25 01:01:59 +01:00
Vincent Sanders 64f607760b add backing store storage path to browser initialisation 2014-05-13 15:53:06 +01:00
Vincent Sanders 4a49ff5266 Extend low level source data cache with persistant storage 2014-05-13 15:52:58 +01:00
Vincent Sanders 16b11e7238 ensure operations tables are registered as early as possible. 2014-05-10 10:22:10 +01:00
Vincent Sanders d5a971c281 move verbose log global into logging module and remove netsurf.h include 2014-01-29 23:20:19 +00:00
Vincent Sanders 4987a3a8a7 remove forward refs from content/fetch.c and cleanup doc comments 2014-01-19 21:18:47 +00:00
Vincent Sanders d47fed4524 move 401 login into operation table 2014-01-16 00:52:17 +00:00
Vincent Sanders bd065d4a43 split browser gui operations up 2014-01-15 19:37:05 +00:00
Vincent Sanders 0075eab194 move remaining gui operations to table 2014-01-14 23:31:54 +00:00
Vincent Sanders d3c392c3d3 Initial conversion of netsurf gui to callback vtable 2014-01-11 14:20:30 +00:00
Vincent Sanders 277bcec7c6 stop system colours being anything to do with frontends 2014-01-10 14:32:29 +00:00
Vincent Sanders 1502b08925 move option init out of netsurf_init 2013-05-28 14:16:11 +01:00
Vincent Sanders ee6e6eec05 move options include 2013-05-28 14:16:10 +01:00
Vincent Sanders 35dacc3671 move the logging initialisation out to be call by frontends
This allows each frontend to pass a distinct callback to configure the
output file stream appropriately for their use.
2013-05-23 11:50:57 +01:00
Vincent Sanders 12ff7a47f4 removed unsuded memdebug utilities 2013-05-23 09:29:00 +01:00
Michael Drake 35eb251244 Fix "error setting certificate verify locations" problem when the Choices file doesn't exist. Now there's a single place for front ends to set options overrides. Fix nsoption_setnull_charp leak. 2012-10-17 14:20:18 +01:00
Michael Drake d9e7d58106 Fix up ripples from urldb change. 2012-10-11 11:20:02 +01:00
Daniel Silverstone 2363301c94 Show refcnt in lwc iterator at netsurf exit. 2012-07-22 20:24:33 +01:00
Michael Drake 2ad24f39da Interned string cleanup, phase 2: Create utils/corestrings and use it in css handler. 2012-07-22 15:48:55 +01:00
Daniel Silverstone 8551b9dff0 Move js_finalise(). Fix provided by Ole Loots (mono)
svn path=/trunk/netsurf/; revision=14014
2012-06-29 20:37:32 +00:00
Vincent Sanders 4c89c9d5df improve javascript support
svn path=/trunk/netsurf/; revision=13962
2012-06-10 22:17:30 +00:00
Vincent Sanders 67b6f8d4a3 remove unecessary includes
svn path=/trunk/netsurf/; revision=13556
2012-03-23 16:56:43 +00:00
Vincent Sanders 1490b52a6b NetSurf options rework (a=vince r=daniels,jmb)
svn path=/trunk/netsurf/; revision=13548
2012-03-22 09:34:34 +00:00
Vincent Sanders 6ebaecccaf Totaly prefunctry binding to spidermonkey
svn path=/trunk/netsurf/; revision=13360
2012-01-01 21:42:38 +00:00
Michael Drake 861f88aa43 Port llcache to nsurl.
svn path=/trunk/netsurf/; revision=12904
2011-09-28 11:26:30 +00:00
John Mark Bell 339bed7272 Virtualise content handler finalisation calls. Remove pointless implementations.
svn path=/trunk/netsurf/; revision=12797
2011-09-15 22:47:50 +00:00
Vincent Sanders 2d33a8f85a Make high level cache, low level cache and image cache all be initialised from passed parameters
Calculate all cache sizes from single memory cache size option and sanity check
have a single global struct to hold all parameters instead of several individual variables

svn path=/trunk/netsurf/; revision=12784
2011-09-10 00:55:39 +00:00
Vincent Sanders dec633ca8e make high level cache take a parameter structure
make hlcache have a single global container

svn path=/trunk/netsurf/; revision=12779
2011-09-08 12:04:57 +00:00
Vincent Sanders 69bee6fb71 move bitmap cache initialisation up a level
improve stats reporting

svn path=/trunk/netsurf/; revision=12770
2011-09-07 09:15:33 +00:00
John Mark Bell 6807fa854d Sniff content types where appropriate.
We never sniff for CSS, nor for non-page artefacts (e.g. treeview icons)

svn path=/trunk/netsurf/; revision=12707
2011-09-04 06:28:09 +00:00
John Mark Bell b92ca9cd30 Clean up after content factory
svn path=/trunk/netsurf/; revision=12415
2011-05-16 21:16:44 +00:00
John Mark Bell e71691bae8 Merge branches/jmb/content-factory to trunk
svn path=/trunk/netsurf/; revision=12283
2011-05-06 20:40:09 +00:00
Vincent Sanders 74ffc40e92 move logging initialisation
svn path=/trunk/netsurf/; revision=12152
2011-04-02 13:05:55 +00:00
Vincent Sanders fff2520409 commandline option setting
svn path=/trunk/netsurf/; revision=12106
2011-03-18 21:58:29 +00:00
Daniel Silverstone e083b503a0 Ensure we stop the hlcache schedule before we quit the gui
svn path=/trunk/netsurf/; revision=12036
2011-03-13 20:20:31 +00:00
Daniel Silverstone 93e9bfe323 Shunt the schedule function definitions to desktop/schedule.h. Shunt the hlcache/llcache to using schedule to get their cleanups run.
svn path=/trunk/netsurf/; revision=12029
2011-03-13 18:26:46 +00:00
John Mark Bell 56413fd61c Lose nasty code
svn path=/trunk/netsurf/; revision=11984
2011-03-12 19:14:23 +00:00