Daniel Silverstone
45faa483e5
Ensure an error'd fetch's llcache object is implicitly stale so it is not reused
...
svn path=/trunk/netsurf/; revision=10301
2010-04-08 12:20:20 +00:00
Daniel Silverstone
6c9e4bea8e
Purge FETCH_TYPE which is unused throughout NetSurf. Clearing a todo in llcachec.
...
svn path=/trunk/netsurf/; revision=10300
2010-04-08 12:16:52 +00:00
Daniel Silverstone
2b1146bcb3
Remove parent from fetches, clearing a todo from llcache.c
...
svn path=/trunk/netsurf/; revision=10299
2010-04-08 11:47:05 +00:00
Daniel Silverstone
6948496d45
Ensure that aborting or releasing hlcache handles will result in nascent retrieval contexts being cleaned up
...
svn path=/trunk/netsurf/; revision=10298
2010-04-08 11:21:50 +00:00
John Mark Bell
bba7fbbd9b
Abort and release llcache handle on failure to process data.
...
Make hlcache retrieval ignore erroneous contents.
svn path=/trunk/netsurf/; revision=10296
2010-04-08 07:09:09 +00:00
John Mark Bell
4682f0ccd8
When we've snapshotted an object, make sure we add the *new* object into the list of uncacheable objects, and not the old one. Otherwise, our cache chains end up being corrupted.
...
svn path=/trunk/netsurf/; revision=10295
2010-04-08 07:08:16 +00:00
Michael Drake
2fba2249ee
Add function to test whether hlcache_handle's content is locked.
...
svn path=/trunk/netsurf/; revision=10287
2010-04-07 18:50:18 +00:00
Michael Drake
bbd757c34a
Fix fetch_curl_post_convert() for filename_from_path() returning NULL.
...
svn path=/trunk/netsurf/; revision=10265
2010-04-07 11:10:55 +00:00
Michael Drake
236b6a15e1
Add mime-type getter.
...
svn path=/trunk/netsurf/; revision=10259
2010-04-07 09:12:09 +00:00
John Mark Bell
2748fe4f64
Make downloads work again.
...
svn path=/trunk/netsurf/; revision=10243
2010-04-05 21:35:38 +00:00
John Mark Bell
2dc791a253
Remove redundant content message types and associated data
...
svn path=/trunk/netsurf/; revision=10241
2010-04-05 10:40:16 +00:00
John Mark Bell
69f02e926f
Make the high-level cache drop contents of unacceptable type on the floor.
...
svn path=/trunk/netsurf/; revision=10238
2010-04-04 17:17:24 +00:00
John Mark Bell
79ce683b4e
Most of a stop implementation.
...
Remaining work:
1) Clone content_html_data
2) Cloning content_css_data requires the charset of the old content
3) Calling hlcache_handle_abort() before a content has been created must clean up the retrieval context.
svn path=/trunk/netsurf/; revision=10236
2010-04-04 12:41:19 +00:00
John Mark Bell
43a99ab683
Constify data parameter to *_process_data
...
svn path=/trunk/netsurf/; revision=10234
2010-04-03 16:37:36 +00:00
John Mark Bell
49810d8191
Use mutator to modify content's title field.
...
svn path=/trunk/netsurf/; revision=10231
2010-04-03 11:55:28 +00:00
Vincent Sanders
95e4a737de
rationalise the usage of the file scheme
...
svn path=/trunk/netsurf/; revision=10221
2010-03-31 13:59:57 +00:00
John Mark Bell
9f575c590b
Do not abort fetch on receipt of FETCH_ERROR: the fetch has already been destroyed.
...
Implement LLCACHE_EVENT_ERROR case of hlcache_llcache_callback().
svn path=/trunk/netsurf/; revision=10218
2010-03-30 21:36:39 +00:00
Chris Young
07537e5240
Fix compilation when building WITH_NS_SVG
...
svn path=/trunk/netsurf/; revision=10213
2010-03-30 18:12:21 +00:00
John Mark Bell
9aca901eb1
The convert stage of a content's state progression no longer reflows the content to the provided dimensions.
...
It is now defined as converting the content into a state in which it is ready for use.
The user of the content is now responsible for performing an initial reformat (sic) of the content before it can be redrawn.
Purge width/height parameters from hlcache_handle_retrieve/content_convert/*_convert APIs.
Fix up content handlers affected by the above change in semantics.
Ensure that browser_window_callback performs an initial reformat of its content.
svn path=/trunk/netsurf/; revision=10207
2010-03-29 22:33:21 +00:00
John Mark Bell
2a53c4c811
Use hlcache_child_ctx, instead of just hoping that we replicate its members correctly.
...
Ensure public API documentation is not duplicated.
svn path=/trunk/netsurf/; revision=10206
2010-03-29 21:17:18 +00:00
John Mark Bell
99dee5e3d0
Disable llcache tracing
...
svn path=/trunk/netsurf/; revision=10201
2010-03-29 06:29:56 +00:00
John Mark Bell
b6f6bc5fdd
Fix broken linked list removal.
...
svn path=/trunk/netsurf/; revision=10200
2010-03-29 06:29:25 +00:00
John Mark Bell
311b458d56
Forbid contents with active fetches from being cleaned.
...
svn path=/trunk/netsurf/; revision=10199
2010-03-29 06:28:46 +00:00
John Mark Bell
4e2c3a4c39
Exceptionally verbose tracing of llcache operation.
...
svn path=/trunk/netsurf/; revision=10198
2010-03-29 06:27:37 +00:00
John Mark Bell
57253cdd58
Fixup per review
...
svn path=/trunk/netsurf/; revision=10196
2010-03-28 23:25:21 +00:00
Daniel Silverstone
66d1418506
Allow us to cache foo?bar when it explicitly allows it. as per rfc2616 13.9
...
svn path=/trunk/netsurf/; revision=10190
2010-03-28 16:51:47 +00:00
Daniel Silverstone
8effd1cb98
Ensure that finished redirection objects in llcache do not get found by subsequent fetch attempts.
...
svn path=/trunk/netsurf/; revision=10188
2010-03-28 16:28:28 +00:00
Daniel Silverstone
cb7412181f
Replace fetch_poll with llcache_poll throughout. Allow CONTENT_OTHER to complete properly.
...
svn path=/trunk/netsurf/; revision=10187
2010-03-28 16:00:54 +00:00
Daniel Silverstone
05a4eceae2
Remove fetchcache.[ch]
...
svn path=/trunk/netsurf/; revision=10183
2010-03-28 15:34:07 +00:00
Daniel Silverstone
270ef59a98
Merge jmb/new-cache; r=dsilvers,rs=vince
...
svn path=/trunk/netsurf/; revision=10180
2010-03-28 12:56:39 +00:00
Chris Young
033b5d815a
Move code which extracts the filename from a given path into frontend.
...
svn path=/trunk/netsurf/; revision=10139
2010-03-21 13:32:59 +00:00
John Mark Bell
ee833877c5
Rate limit fetch progress notifications.
...
svn path=/trunk/netsurf/; revision=9962
2010-02-10 00:32:12 +00:00
Vincent Sanders
6990c2cd04
remove uneccissary includes
...
svn path=/trunk/netsurf/; revision=9931
2010-01-29 11:32:53 +00:00
James Bursa
914eedc11d
Don't set proxy option for file: URLs to workaround some versions of libcurl attempting to use it (fixed in latest libcurl). Also unset curl proxy option if it's disabled so the previous xfer's setting isn't retained.
...
svn path=/trunk/netsurf/; revision=9759
2009-12-25 19:27:22 +00:00
John Mark Bell
b75b2ae8bb
Merge r9731:HEAD from branches/MarkieB/gtkmain to trunk.
...
svn path=/trunk/netsurf/; revision=9737
2009-12-18 20:15:50 +00:00
John Mark Bell
355799ce0b
Merge branches/MarkieB/gtkmain to trunk.
...
svn path=/trunk/netsurf/; revision=9729
2009-12-17 23:55:02 +00:00
John Mark Bell
d88945bc0b
Squash leak.
...
svn path=/trunk/netsurf/; revision=9711
2009-12-02 16:54:17 +00:00
John Mark Bell
d591d8df94
Treat decomposed URLs with no path component as being for the path "/".
...
svn path=/trunk/netsurf/; revision=9703
2009-11-22 23:25:18 +00:00
John Mark Bell
3f4d79e576
This optimisation was so simple that it was broken.
...
svn path=/trunk/netsurf/; revision=9696
2009-11-22 14:24:53 +00:00
John Mark Bell
8685cfb3b7
Fix the other half of this NULL dereference issue
...
svn path=/trunk/netsurf/; revision=9695
2009-11-22 14:21:47 +00:00
John Mark Bell
63848419e2
Ensure urldb file handle is closed on error.
...
svn path=/trunk/netsurf/; revision=9693
2009-11-22 14:12:03 +00:00
John Mark Bell
eba224e09e
Avoid potential NULL deference
...
svn path=/trunk/netsurf/; revision=9688
2009-11-22 13:52:16 +00:00
John Mark Bell
81c1b0e0df
Don't call memcpy when p->segment is NULL
...
svn path=/trunk/netsurf/; revision=9687
2009-11-22 13:49:43 +00:00
John Mark Bell
54cd21ae0d
Realm may be NULL iff there's no WWW-Authenticate header served up with a 401.
...
Default the realm to the fetch URL in this case. Fixes #2890933
Note for new cache implementation (which is actually capable of utilising response bodies in this situation): if there is no WWW-Authenticate header, serve up the response body immediately -- don't present an authentication dialogue.
svn path=/trunk/netsurf/; revision=9659
2009-11-03 07:03:07 +00:00
John Mark Bell
1c403cb2f8
svgtiny requires separate contents
...
svn path=/trunk/netsurf/; revision=9615
2009-10-08 12:03:44 +00:00
John Mark Bell
e580e2bea9
Hack around cache issue. The entire cache layer needs a redesign asap.
...
svn path=/trunk/netsurf/; revision=9460
2009-08-26 11:22:48 +00:00
John Tytgat
2261b616f6
- content/urldb.c(auth_data): Removed;
...
(prot_space_data): Added, it lives linked in the leaf host_part
struct and together with its scheme and port (which defins canonical root
url) and realm this defines a protection space.
(path_data): Removed auth_data field and replaced by a prot_space_data
pointer.
(host_part::prot_space): Added linked list of protection space data
structs.
(urldb_get_auth_details): Given an URL fetch fetches its auth.
(urldb_set_auth_details): Creates or updates the contents of a
protection space to which given URL belongs.
(urldb_destroy_host_tree): Delete protection data space structures
using urldb_destroy_prot_space.
(urldb_destroy_prot_space): Added.
- content/urldb.h(urldb_get_auth_details): Added realm parameter.
- content/fetchers/fetch_curl.c(fetch_curl_set_options): Update
urldb_get_auth_details call (we don't know realm at this point).
- content/fetchcache.c(fetchcache_callback, fetchcache_auth): At FETCH_AUTH,
use realm to determine if we really don't know auth data and if so,
refetch content.
- content/content.h(struct content): Add content::tried_with_auth.
- content/content.c(content_create): Initialize content::tried_with_auth.
- riscos/401login.c(ro_gui_401login_open): Show known authentication
data in dialogue so user can see what was wrong with it and correct it.
Solves bug #2830829 .
svn path=/trunk/netsurf/; revision=9045
2009-08-04 23:02:23 +00:00
John Tytgat
9d678ef7cd
Drop pkg-config on cairo, not needed here. Added const.
...
svn path=/trunk/netsurf/; revision=8985
2009-08-02 12:07:29 +00:00
Chris Young
0cd96bdd5e
Correct definition
...
svn path=/trunk/netsurf/; revision=8899
2009-07-29 22:00:07 +00:00
Chris Young
d2c29dbe95
Keep a copy of the next_fetcher pointer to avoid a situation where the fetch gets
...
freed during the poll routine and the next pointer can no longer be read.
svn path=/trunk/netsurf/; revision=8898
2009-07-29 18:51:35 +00:00
John Mark Bell
ddeadd1c02
Merge LibCSS port to trunk.
...
svn path=/trunk/netsurf/; revision=8752
2009-07-23 23:05:34 +00:00
John Mark Bell
5feb7018c5
Replace parent_url with a pointer to the parent content.
...
svn path=/trunk/netsurf/; revision=8428
2009-07-10 00:26:37 +00:00
John Mark Bell
ceca548a1d
Fix serialisation of page titles.
...
svn path=/trunk/netsurf/; revision=8313
2009-07-04 18:19:29 +00:00
John Mark Bell
d58baf8ea4
Permit referer to propagate to https hosts from http
...
svn path=/trunk/netsurf/; revision=7875
2009-06-19 11:15:06 +00:00
John Mark Bell
c1e3fb0bec
Remove spurious "domain" variable from urldb_iterate_partial().
...
Lose unnecessary increment of rptr in cookie domain prefix matching.
Record that, in the long term, we need some kind of TLD service to consult so that (e.g.) .co.uk is not considered a valid domain prefix.
svn path=/trunk/netsurf/; revision=7600
2009-05-28 13:19:07 +00:00
John Mark Bell
059b6a0e15
Make logic surrounding extraction of URL + referer scheme more sensible.
...
Always require the fetch URL to have a scheme -- without it, we can't find a fetcher.
svn path=/trunk/netsurf/; revision=7597
2009-05-28 11:56:56 +00:00
John Mark Bell
243c1ba03f
Limit scope of manually-defined NDEBUG. Purge a bunch of redundant #undef NDEBUG.
...
svn path=/trunk/netsurf/; revision=7593
2009-05-28 10:39:53 +00:00
John Mark Bell
42e24e8099
s/abort/abort_fetch/
...
svn path=/trunk/netsurf/; revision=7512
2009-05-14 10:13:20 +00:00
John Mark Bell
53bbe5fb9e
Fix url completion when last character in url bar is a /
...
svn path=/trunk/netsurf/; revision=7105
2009-04-16 14:12:54 +00:00
John Mark Bell
a763e36d2e
It's probably a good idea not to redirect to file:/// URLs
...
svn path=/trunk/netsurf/; revision=6695
2009-03-04 13:29:54 +00:00
John Mark Bell
a36535f341
Pointless warning avoidance.
...
svn path=/trunk/netsurf/; revision=6676
2009-03-02 20:32:05 +00:00
John Mark Bell
b98f105b24
Purge WITH_AUTH
...
svn path=/trunk/netsurf/; revision=6600
2009-02-22 15:13:10 +00:00
John Mark Bell
847b776285
Purge NETSURF_USE_SSL and WITH_SSL
...
svn path=/trunk/netsurf/; revision=6599
2009-02-22 15:07:50 +00:00
John Mark Bell
16c01d97e9
Log detected state of openssl availability
...
svn path=/trunk/netsurf/; revision=6595
2009-02-21 23:04:49 +00:00
John Mark Bell
756c393abb
Given that the build-time SSL detection can be somewhat inaccurate, attempt to determine whether we can use the SSL_CTX stuff at runtime.
...
svn path=/trunk/netsurf/; revision=6586
2009-02-21 02:46:47 +00:00
John Mark Bell
79b4cee9d3
Make redirects behave as a NOP wrt the verifiability of fetches.
...
Apparently, the interweb depends on this.
svn path=/trunk/netsurf/; revision=6542
2009-02-16 20:24:54 +00:00
John Mark Bell
79c0981402
Ensure that neither the current fetch host nor the referrer is an IP address before attempting to domain match them.
...
svn path=/trunk/netsurf/; revision=6466
2009-02-13 10:49:35 +00:00
John Mark Bell
e5c225f7d9
Even fuzzier domain matching.
...
svn path=/trunk/netsurf/; revision=6463
2009-02-13 00:25:48 +00:00
John Mark Bell
19321017a9
Document the assumption that all URLs passed into urldb are already normalised. Violate this precondition at your peril.
...
svn path=/trunk/netsurf/; revision=6371
2009-02-06 02:08:00 +00:00
Michael Drake
c1439ae4e7
Comment content_redraw.
...
svn path=/trunk/netsurf/; revision=6355
2009-02-02 14:06:51 +00:00
John Mark Bell
6a0a7c346a
Let's try that again. Now actually passes the regression tests.
...
svn path=/trunk/netsurf/; revision=6317
2009-01-31 03:03:50 +00:00
John Mark Bell
e2ebfb72f7
Fix urldb_match_path().
...
Fix test code.
svn path=/trunk/netsurf/; revision=6316
2009-01-31 02:49:26 +00:00
John Mark Bell
966b402881
urldb_destroy_path_tree() -> iteration
...
svn path=/trunk/netsurf/; revision=6315
2009-01-31 02:30:28 +00:00
John Mark Bell
9085c458d3
urldb_save_cookie_paths() -> iteration
...
svn path=/trunk/netsurf/; revision=6314
2009-01-31 02:16:01 +00:00
John Mark Bell
71e397eb84
Initialising variables helps
...
svn path=/trunk/netsurf/; revision=6313
2009-01-31 02:13:12 +00:00
John Mark Bell
92b3bdeda0
urldb_delete_cookie_paths() -> iteration
...
svn path=/trunk/netsurf/; revision=6312
2009-01-31 02:12:06 +00:00
John Mark Bell
45b222ab50
Make urldb_dump_paths iterate
...
svn path=/trunk/netsurf/; revision=6311
2009-01-31 02:02:01 +00:00
John Mark Bell
a1d409d922
Make urldb_match_path() iterate.
...
svn path=/trunk/netsurf/; revision=6310
2009-01-31 01:57:15 +00:00
John Mark Bell
376ef0ca47
Make urldb_iterate_entries_path use iteration
...
svn path=/trunk/netsurf/; revision=6304
2009-01-30 19:58:46 +00:00
John Mark Bell
e5c07a3a82
Pedantic linewrapping
...
svn path=/trunk/netsurf/; revision=6303
2009-01-30 19:47:15 +00:00
John Mark Bell
29fac74dcc
Make urldb_iterate_partial_path iterate over the tree and not recurse.
...
svn path=/trunk/netsurf/; revision=6302
2009-01-30 19:43:54 +00:00
John Mark Bell
ffe288e50b
This logic looked entirely wrong. Fix it to be more sane. If this breaks things, blame the lack of commentary.
...
svn path=/trunk/netsurf/; revision=6301
2009-01-30 19:09:26 +00:00
John Mark Bell
a2fbddea60
Minor optimisation
...
svn path=/trunk/netsurf/; revision=6300
2009-01-30 18:50:55 +00:00
John Mark Bell
a3f46b12ef
Iterate when counting/writing out paths.
...
svn path=/trunk/netsurf/; revision=6299
2009-01-30 18:48:55 +00:00
John Mark Bell
f7f19ab0ed
Squash strict-aliasing warning in the most disgusting way possible.
...
svn path=/trunk/netsurf/; revision=6070
2009-01-15 16:00:16 +00:00
John Mark Bell
3a56b67d95
Add missing #include.
...
Fix guard macro -- how long has this been wrong, I wonder?
svn path=/trunk/netsurf/; revision=6069
2009-01-15 15:58:35 +00:00
Daniel Silverstone
4e3951660f
Silence a bunch of warnings caused by cURL's typecheck-gcc stuff being strict and in one case cURL simply being daft (whoever heard of a signed HTTP response code?).
...
svn path=/trunk/netsurf/; revision=5991
2009-01-08 10:36:11 +00:00
John Mark Bell
31e6afe6ef
Remove noisy logging of http headers
...
svn path=/trunk/netsurf/; revision=5672
2008-11-09 19:20:08 +00:00
John Mark Bell
79fdbab192
Jump through hoops, potentially squashing warnings.
...
svn path=/trunk/netsurf/; revision=5569
2008-10-13 23:45:08 +00:00
Daniel Silverstone
5c01ca3306
Better, safer fix for the type punning issue
...
svn path=/trunk/netsurf/; revision=5562
2008-10-13 16:39:54 +00:00
Daniel Silverstone
1108d1d1c5
Fix type-punning warning in fetch_data.c
...
svn path=/trunk/netsurf/; revision=5561
2008-10-13 16:27:45 +00:00
Daniel Silverstone
eaa744c0d2
Remove urldb_search_remove. Added hint for where to find it if we need it in future
...
svn path=/trunk/netsurf/; revision=5531
2008-10-10 11:54:37 +00:00
François Revel
54a49823b5
Revert r5478, I didn't notice content struct had a mime_type field.
...
svn path=/trunk/netsurf/; revision=5480
2008-10-03 04:30:47 +00:00
François Revel
209c72b011
Add a function to tell the mime type for a content type.
...
svn path=/trunk/netsurf/; revision=5478
2008-10-03 03:40:42 +00:00
John Tytgat
2d1481fafc
'unsigned long' -> 'colour' where it made sense.
...
svn path=/trunk/netsurf/; revision=5459
2008-09-28 22:37:13 +00:00
Daniel Silverstone
3f5d902edd
Merged revisions 5309-5406,5409-5422 via svnmerge from
...
svn://svn.netsurf-browser.org/branches/vince/netsurf-fb
........
r5309 | vince | 2008-09-13 10:59:10 +0100 (Sat, 13 Sep 2008) | 2 lines
first stab at framebuffer frontend
........
r5313 | vince | 2008-09-14 15:08:52 +0100 (Sun, 14 Sep 2008) | 2 lines
add line plotters
........
r5314 | vince | 2008-09-14 15:28:12 +0100 (Sun, 14 Sep 2008) | 2 lines
add rectangle plot to 16bpp plotters
........
r5315 | vince | 2008-09-14 19:58:57 +0100 (Sun, 14 Sep 2008) | 2 lines
improve 16bpp image plot
........
r5316 | vince | 2008-09-15 00:35:32 +0100 (Mon, 15 Sep 2008) | 2 lines
abstract the os specific framebuffer init
........
r5317 | vince | 2008-09-15 11:18:51 +0100 (Mon, 15 Sep 2008) | 2 lines
first cut of linux frontend
........
r5318 | vince | 2008-09-15 12:01:00 +0100 (Mon, 15 Sep 2008) | 2 lines
remove junk includes
........
r5319 | vince | 2008-09-15 12:09:02 +0100 (Mon, 15 Sep 2008) | 2 lines
make plotters OS agnostic again
........
r5322 | vince | 2008-09-15 15:55:01 +0100 (Mon, 15 Sep 2008) | 2 lines
Linux frontend operates
........
r5323 | vince | 2008-09-15 16:32:47 +0100 (Mon, 15 Sep 2008) | 2 lines
abstract out OS specific input
........
r5326 | vince | 2008-09-15 19:21:01 +0100 (Mon, 15 Sep 2008) | 2 lines
Improve linux mode setting
........
r5329 | vince | 2008-09-15 21:13:33 +0100 (Mon, 15 Sep 2008) | 2 lines
improve text clipping
........
r5339 | vince | 2008-09-16 00:07:57 +0100 (Tue, 16 Sep 2008) | 2 lines
possibly fix text clipping issue
........
r5342 | vince | 2008-09-16 00:39:36 +0100 (Tue, 16 Sep 2008) | 2 lines
consolidate polygon plotters
........
r5344 | dsilvers | 2008-09-16 10:21:06 +0100 (Tue, 16 Sep 2008) | 1 line
Fix up the framebuffer target makefile a bit more, add some config options for it
........
r5345 | dsilvers | 2008-09-16 10:22:19 +0100 (Tue, 16 Sep 2008) | 1 line
Ensure the appropriate frontend is selected when building framebuffer
........
r5346 | dsilvers | 2008-09-16 10:27:16 +0100 (Tue, 16 Sep 2008) | 1 line
Update build system to support targetting separate framebuffer frontends in different build trees, update executable to be nsfb-blah
........
r5350 | vince | 2008-09-16 17:15:04 +0100 (Tue, 16 Sep 2008) | 1 line
Add -g to provide symbols for framebuffer link
........
r5351 | vince | 2008-09-16 17:17:09 +0100 (Tue, 16 Sep 2008) | 1 line
framebuffer scheduler now works, plotters tweaked, gui tracks window redraw requirements better, keypresses not duplicated under linux fb
........
r5352 | dsilvers | 2008-09-16 17:38:53 +0100 (Tue, 16 Sep 2008) | 1 line
Ensure we only allow one fetcher at a time
........
r5361 | vince | 2008-09-17 11:48:44 +0100 (Wed, 17 Sep 2008) | 2 lines
initial cursor support
........
r5362 | vince | 2008-09-17 13:56:47 +0100 (Wed, 17 Sep 2008) | 2 lines
add mouse handling
........
r5363 | vince | 2008-09-17 14:14:44 +0100 (Wed, 17 Sep 2008) | 2 lines
add framebuffer resources
........
r5364 | vince | 2008-09-17 17:12:21 +0100 (Wed, 17 Sep 2008) | 2 lines
add reasonable pointer
........
r5366 | vince | 2008-09-17 17:17:25 +0100 (Wed, 17 Sep 2008) | 2 lines
fix pointer alpha
........
r5370 | vince | 2008-09-18 13:43:53 +0100 (Thu, 18 Sep 2008) | 2 lines
warning squash and cleanup ready for trunk merge
........
r5375 | vince | 2008-09-19 14:58:43 +0100 (Fri, 19 Sep 2008) | 2 lines
Working mouse navigation
........
r5377 | vince | 2008-09-20 14:06:22 +0100 (Sat, 20 Sep 2008) | 2 lines
Improve scrolling
........
r5378 | vince | 2008-09-20 14:46:46 +0100 (Sat, 20 Sep 2008) | 2 lines
fix redraw issues with scrolling
........
r5380 | vince | 2008-09-20 17:08:43 +0100 (Sat, 20 Sep 2008) | 3 lines
Alter panning to use its own flag so it doesnt cause invalid redraw
operations
........
r5381 | vince | 2008-09-20 21:52:45 +0100 (Sat, 20 Sep 2008) | 2 lines
add dummy framebuffer
........
r5383 | vince | 2008-09-21 00:00:15 +0100 (Sun, 21 Sep 2008) | 2 lines
fix segfault when cursor is off teh bottom of teh screen
........
r5384 | vince | 2008-09-21 00:06:08 +0100 (Sun, 21 Sep 2008) | 2 lines
fix off by one in pointer fix
........
r5385 | vince | 2008-09-21 00:25:09 +0100 (Sun, 21 Sep 2008) | 2 lines
when fixing bloody silly off by one errors remember to fix *both* references
........
r5387 | vince | 2008-09-21 00:38:13 +0100 (Sun, 21 Sep 2008) | 2 lines
last try at stopping the pointer segfault
........
r5388 | vince | 2008-09-21 16:24:18 +0100 (Sun, 21 Sep 2008) | 2 lines
improve vertical text clipping
........
r5392 | vince | 2008-09-21 23:11:51 +0100 (Sun, 21 Sep 2008) | 2 lines
Improve text plotters
........
r5393 | vince | 2008-09-21 23:34:38 +0100 (Sun, 21 Sep 2008) | 2 lines
fix 32bpp line plotting
........
r5394 | vince | 2008-09-22 00:00:03 +0100 (Mon, 22 Sep 2008) | 2 lines
Fix off by one error in line plotting clipping
........
r5397 | vince | 2008-09-22 13:46:22 +0100 (Mon, 22 Sep 2008) | 2 lines
Fix bitmap tileing
........
r5398 | vince | 2008-09-22 17:46:02 +0100 (Mon, 22 Sep 2008) | 2 lines
enable knockout renderer
........
r5399 | vince | 2008-09-22 18:43:48 +0100 (Mon, 22 Sep 2008) | 2 lines
ensure clipping region lies within window, caused by knockout renderer
........
r5400 | vince | 2008-09-22 19:20:25 +0100 (Mon, 22 Sep 2008) | 2 lines
update cursor to one swiped from X windows
........
r5405 | vince | 2008-09-23 09:09:05 +0100 (Tue, 23 Sep 2008) | 2 lines
fix vertical scroll limit
........
r5412 | dsilvers | 2008-09-23 10:53:14 +0100 (Tue, 23 Sep 2008) | 1 line
Revert noisy fetcher patch
........
r5413 | dsilvers | 2008-09-23 10:58:00 +0100 (Tue, 23 Sep 2008) | 1 line
Add header guards
........
r5414 | dsilvers | 2008-09-23 11:31:31 +0100 (Tue, 23 Sep 2008) | 1 line
Tidy the region clipping slightly
........
r5416 | dsilvers | 2008-09-23 12:05:00 +0100 (Tue, 23 Sep 2008) | 1 line
Rationalise how the framebuffer frontend finds resources and options
........
r5418 | dsilvers | 2008-09-23 13:59:00 +0100 (Tue, 23 Sep 2008) | 1 line
Ensure options are overridden after load, and squash an fb_gui.c warning
........
r5419 | dsilvers | 2008-09-23 14:20:07 +0100 (Tue, 23 Sep 2008) | 1 line
Support fb_mode and fb_device options
........
r5420 | dsilvers | 2008-09-23 14:21:48 +0100 (Tue, 23 Sep 2008) | 1 line
Support option_fb_device in the able frontend
........
r5421 | dsilvers | 2008-09-23 14:25:17 +0100 (Tue, 23 Sep 2008) | 1 line
Ensure target_blank is disabled
........
r5422 | dsilvers | 2008-09-23 14:39:00 +0100 (Tue, 23 Sep 2008) | 1 line
Rework linux fb frontend to support scanning and opening all event devices for input
........
svn path=/trunk/netsurf/; revision=5423
2008-09-23 14:00:40 +00:00
Michael Drake
bbd40534c6
Treat image/jpg as JPEG content for Royal Mail captcha.
...
svn path=/trunk/netsurf/; revision=5343
2008-09-16 08:13:35 +00:00
John Mark Bell
c446540109
Fix build if NETSURF_USE_PNG := yes and NETSURF_USE_MNG := no
...
svn path=/trunk/netsurf/; revision=5332
2008-09-15 20:54:03 +00:00
Daniel Silverstone
d3270ed648
Add libpng support. Default to off.
...
svn path=/trunk/netsurf/; revision=5330
2008-09-15 20:23:02 +00:00
Daniel Silverstone
ac427e05e5
Add additional debug to fetch errors from cURL
...
svn path=/trunk/netsurf/; revision=5174
2008-08-22 11:10:33 +00:00
John Tytgat
611b558d0e
Constify content_type_name & content_status_name
...
svn path=/trunk/netsurf/; revision=4815
2008-07-30 00:54:43 +00:00
François Revel
f28f4cc760
First round of C89 fixes. Those should be obvious, hope I didn't introduce any side effect.
...
svn path=/trunk/netsurf/; revision=4788
2008-07-29 09:05:36 +00:00
Rob Kendrick
e7c5e16b9b
Performance improvements: rather than calling content_clean() every poll, we now call it no more frequently than once every 5 seconds. Additionally, we cache the result of talloc_total_size() in content_clean() rather than calculating it twice. On large documents, this function took 25% of CPU time. This makes the fetching/rendering/scrolling/redrawing of large documents over twice as fast.
...
svn path=/trunk/netsurf/; revision=4527
2008-07-07 14:05:29 +00:00
James Bursa
f87138e5de
Remove two unused functions.
...
svn path=/trunk/netsurf/; revision=4333
2008-06-14 23:17:50 +00:00
James Bursa
3d590b1efa
Handle errors returned by curl_multi_perform(), such as out of memory, instead of exiting.
...
svn path=/trunk/netsurf/; revision=4329
2008-06-14 21:43:52 +00:00
John Mark Bell
6168417b80
Fix cache control
...
svn path=/trunk/netsurf/; revision=4288
2008-06-06 23:51:51 +00:00
John Mark Bell
5015eb6e87
Squash warning
...
svn path=/trunk/netsurf/; revision=4257
2008-06-03 22:17:35 +00:00
James Bursa
8282253a54
Move struct cache_data from fetch to content as it is no longer needed by fetch. Make it a member instead of pointer in struct content.
...
svn path=/trunk/netsurf/; revision=4246
2008-06-03 01:10:46 +00:00
James Bursa
21a3c99d3d
Remove unused members of struct fetch (were moved to fetch_curl but not removed from here).
...
svn path=/trunk/netsurf/; revision=4232
2008-05-31 16:57:53 +00:00
James Bursa
ef6690ad72
Stop processing headers and sending FETCH_HEADER if fetch was aborted.
...
svn path=/trunk/netsurf/; revision=4231
2008-05-31 16:52:37 +00:00
James Bursa
b9bce3fa31
Fix freeing of etag data.
...
svn path=/trunk/netsurf/; revision=4229
2008-05-31 15:52:22 +00:00
John Mark Bell
f4be61553c
Fix handling of cache control data
...
svn path=/trunk/netsurf/; revision=4227
2008-05-30 11:09:50 +00:00
James Bursa
ae992eab4d
Add new fetch callback FETCH_HEADER for headers and move as much header parsing as possible from fetch_curl.c to fetchcache.c. This simplifies fetch_curl.c and will make it possible to store response headers in future.
...
svn path=/trunk/netsurf/; revision=4226
2008-05-30 04:11:16 +00:00
John Mark Bell
a76164ab51
Wrap very verbose logging with #ifdef, so as to silence it.
...
svn path=/trunk/netsurf/; revision=4225
2008-05-29 19:32:31 +00:00
John Tytgat
793d466edf
- introduction of SLEN()
...
- enforce result of url_normalize() being NULL on failure
- plug memory leak when url_normalize() fails
svn path=/trunk/netsurf/; revision=4200
2008-05-25 15:51:30 +00:00
John Mark Bell
c24b426881
No longer suppress the default Accept: header.
...
This fixes all those sites that brokenly assume that it's required and thus break when the client doesn't send one (here's looking at you royalmail.com).
libcurl's default Accept header is "*/*", which is semantically equivalent to not sending a header at all (no header implies the client accepts all content types).
svn path=/trunk/netsurf/; revision=4196
2008-05-24 10:09:02 +00:00
John Mark Bell
fbb483e0ff
Fix type of value_was_quoted member of cookie_data struct.
...
svn path=/trunk/netsurf/; revision=4166
2008-05-16 10:27:01 +00:00
John Mark Bell
74a1095cd6
Remove unnecessary includes
...
svn path=/trunk/netsurf/; revision=4144
2008-05-11 10:09:44 +00:00
John Mark Bell
dc85ddb0a8
Launch redirects to unsupported URLs in other applications.
...
svn path=/trunk/netsurf/; revision=4098
2008-04-19 11:07:42 +00:00
Rob Kendrick
59641def82
const fixes in plotters and history core
...
svn path=/trunk/netsurf/; revision=4083
2008-04-07 11:15:09 +00:00
James Shaw
9402e110e9
Implement sprite support for GTK using librosprite
...
svn path=/trunk/netsurf/; revision=4051
2008-03-29 13:30:04 +00:00
John Mark Bell
46d135f42d
Squash warning
...
svn path=/trunk/netsurf/; revision=3988
2008-03-19 18:36:16 +00:00
John Mark Bell
d260420249
Squash warning
...
svn path=/trunk/netsurf/; revision=3983
2008-03-19 17:36:07 +00:00
John Mark Bell
6cf4ce640c
Squash warning
...
svn path=/trunk/netsurf/; revision=3982
2008-03-19 17:29:34 +00:00
John Mark Bell
9597b5359c
Drop support for URL file versions below 1.06
...
svn path=/trunk/netsurf/; revision=3945
2008-03-13 18:25:41 +00:00
John Mark Bell
2dadb5fac8
Forward compatible Cookie file loading/saving
...
Reduce amount of magic numbers
svn path=/trunk/netsurf/; revision=3944
2008-03-13 18:14:05 +00:00
Rob Kendrick
4ec38922ac
Change meaning of c->redraw_time to be the earliest time to reflow during page asset fetch. Have the time selected vary depending on how long the last reflow took.
...
svn path=/trunk/netsurf/; revision=3925
2008-03-11 00:14:39 +00:00
Rob Kendrick
fed99c2cb5
jmb's rework of data: URL handling
...
svn path=/trunk/netsurf/; revision=3890
2008-03-06 11:28:00 +00:00
Rob Kendrick
58ee433b67
Add another check for malformed data: URLs
...
svn path=/trunk/netsurf/; revision=3889
2008-03-05 23:09:36 +00:00
Rob Kendrick
b168d636d0
Many data: fixes. Acid2 no longer crashes NetSurf.
...
svn path=/trunk/netsurf/; revision=3888
2008-03-05 22:57:46 +00:00
Rob Kendrick
c9bd38f5dd
Check for calloc() failing
...
svn path=/trunk/netsurf/; revision=3885
2008-03-05 15:01:42 +00:00
Rob Kendrick
0e43415013
Use curl_free() when freeing data: URLs that are URL-encoded instead of using free()
...
svn path=/trunk/netsurf/; revision=3884
2008-03-05 14:57:33 +00:00
Rob Kendrick
8e79665248
Initial attempt at implementing data: URLs. Needs cleaning and verifying that I'm using the fetcher API correctly. Appears to work, though.
...
svn path=/trunk/netsurf/; revision=3882
2008-03-05 14:21:29 +00:00
John Mark Bell
3986abd20b
Add testcase for non-fqdn -- already passes, but may as well keep it for regression testing.
...
svn path=/trunk/netsurf/; revision=3877
2008-03-03 13:21:02 +00:00
Michael Drake
bae61d9224
Periodically reflow the page while fetching a page's objects. Make buffer all rendering default.
...
svn path=/trunk/netsurf/; revision=3874
2008-02-29 23:03:26 +00:00
John Mark Bell
85bb19c93d
Mark old contents as stale if a conditional request succeeded so they'll be flushed from the cache as soon as they're unused.
...
svn path=/trunk/netsurf/; revision=3872
2008-02-27 19:13:35 +00:00
John Mark Bell
3a79bcb3da
Explicitly mark error pages as non-fresh so they'll get purged from the cache ASAP.
...
svn path=/trunk/netsurf/; revision=3871
2008-02-27 18:48:35 +00:00
John Mark Bell
89793c2171
Make content_reset actually do what it's meant to (i.e. reset the appropriate members)
...
Fix up CONTENT_MSG_REFRESH scheduled events to gracefully the refresh URL disappearing from under them.
svn path=/trunk/netsurf/; revision=3870
2008-02-27 18:38:41 +00:00
John Mark Bell
7f70acaca6
Silence noisy logging
...
svn path=/trunk/netsurf/; revision=3830
2008-02-03 18:21:49 +00:00
John Mark Bell
ad6fcea6b0
Add url_fragment to extract fragment from URL
...
Optionally allow url_compare to ignore fragments in comparison
Fix handling of url_compare result in a few places
Fix redirects which contain fragments in the Location header
svn path=/trunk/netsurf/; revision=3826
2008-02-03 12:04:48 +00:00
John Mark Bell
cc3481a2ff
Make core fetching code handle verifiability of transactions
...
Make core fetching code be responsible for inserting cookies into the urldb
Provide accessor to a fetch's parent url (this is defined as being the URL of the verifiable fetch which caused this one to occur)
Make fetchcache's 3xx handling use the parent url when spawning new fetches
svn path=/trunk/netsurf/; revision=3809
2008-01-30 19:56:41 +00:00
John Mark Bell
9164f247c2
Ensure plq is terminated when looking for an URL path.
...
Ensure fetchcache_redirect() normalizes the redirect destination.
svn path=/trunk/netsurf/; revision=3807
2008-01-30 01:44:57 +00:00
John Mark Bell
78d194cb77
Rework handling of HTTP redirects -- we now count the number of redirects followed for a given item and abort if a fixed limit is reached. This fixes sites which have pages that redirect to themselves.
...
Redirect handling is now transparent to clients of fetchcache.
The new scheme works as follows:
1) Request content for URL (fetchcache()
2) Start fetch of content (fetchcache_go()
3) If no redirect, continue through LOADING, READY, DONE etc. states as before
If redirect, receive NEWPTR for each redirect that occurs, then continue
through LOADING, READY, DONE etc. states as before.
The upshot of this is that redirects result in extra contents being created. It also means that, until LOADING has been received, the content (and thus the URL being fetched) may change. Therefore, fetchcache clients should expect to have to deal with transient data prior to LOADING occurring.
As a necessary side-effect of this, the HTML object URLs and CSS @import URLs are no longer stored alongside the relevant contents. These URLs can be accessed by interrogating the url member of struct content anyway, so it was a rather redundant scheme before.
svn path=/trunk/netsurf/; revision=3787
2008-01-28 01:35:00 +00:00
John Mark Bell
02e2fab6a3
More work on cookie parser. Our junk value handling is now significantly closer to that of other browsers.
...
+ Fix infinite loop when encountering a spurious \r
+ Values are only treated as quoted if the first non-whitespace character is "
+ Cookies are inserted into the db in the order of receipt. This brings our
Cookie: header ordering closer to other browsers (though this strictly
shouldn't matter -- no ordering is defined, other than by path specificity)
+ Fix testcase assertions to cope with new output ordering
svn path=/trunk/netsurf/; revision=3709
2008-01-19 01:51:39 +00:00
John Mark Bell
e5e2eb09f6
Work on cookies to bring our behaviour closer to the spec and other browsers:
...
+ Improve handling of quoted cookies -- now processes nested quotes correctly
+ Improve cookie output -- now knows which version it's outputting for and
processes things appropriately
+ Add assertion that we're dealing with a domain cookie in the case where the
cookie domain and URL host part don't match during validation.
+ Tidy up fix for broken domain cookie setting -- it's now less confusing to
read.
+ Preserve cookie value quoting, regardless of its necessity.
+ Modify Cookie file format to save value_was_quoted flag -- version number
bumped to 101.
+ Add more testcases.
svn path=/trunk/netsurf/; revision=3708
2008-01-17 20:00:55 +00:00
John Mark Bell
2fa8e656a1
The previous fix was broken -- URI paths include the leafname.
...
Make url_path() return the full path (including the leafname).
Defaulted cookie path attributes have the leafname and trailing slash stripped.
Add testcase for defaulted path.
Fix testcase conditions for paths with leafnames.
svn path=/trunk/netsurf/; revision=3693
2008-01-07 12:01:11 +00:00
John Mark Bell
74078b6e36
Fix potential crash in urldb_dump()
...
Relax 4.3.2(i) checking (Cookie path must be a prefix of URL path). We now permit a cookie path containing the document leafname -- we strip the leafname from the path.
Make testsuite build again.
Add tests for cookie path checking.
svn path=/trunk/netsurf/; revision=3692
2008-01-07 04:58:06 +00:00
John Mark Bell
d1bf94dc4d
Work around sites sending domain cookies for .foo.com from hosts such as bar.bat.foo.com, then expecting domain matching to succeed. This causes me pain.
...
svn path=/trunk/netsurf/; revision=3637
2007-10-30 23:19:03 +00:00
Vincent Sanders
2f864eeecc
Update all source code file headers to reflect GPL version 2 only and contain appropriate licence text
...
svn path=/trunk/netsurf/; revision=3486
2007-08-08 16:16:03 +00:00
James Bursa
07c54283e3
Move window scaling from platform-specific code to desktop/browser.c. Modify gtk gui to handle scaling in the same way as RO.
...
svn path=/trunk/netsurf/; revision=3478
2007-08-07 03:55:18 +00:00