Commit Graph

3222 Commits

Author SHA1 Message Date
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
Michael Drake
b4621337e8 Fix native RISC OS build. Thanks joty.
svn path=/trunk/netsurf/; revision=4228
2008-05-31 14:39:50 +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 Mark Bell
b27e277eaa Fix desensitisation of reload menu entry
svn path=/trunk/netsurf/; revision=4224
2008-05-29 12:31:07 +00:00
John Mark Bell
e17b53bc02 Fix clipping.
svn path=/trunk/netsurf/; revision=4223
2008-05-29 11:17:30 +00:00
John Mark Bell
601c02f08b Drop support for non-cairo plotting.
Implement path plotter.

svn path=/trunk/netsurf/; revision=4222
2008-05-29 11:03:13 +00:00
John Mark Bell
287e6b2395 Recurse into <area> and <a>, too.
svn path=/trunk/netsurf/; revision=4220
2008-05-28 20:05:30 +00:00
John Mark Bell
e004e0e745 Squash more warnings.
svn path=/trunk/netsurf/; revision=4210
2008-05-26 10:46:45 +00:00
John Mark Bell
f7bc0cf850 Squash warning
svn path=/trunk/netsurf/; revision=4209
2008-05-26 10:41:46 +00:00
John Mark Bell
7a2454a40a Fix callback prototype
svn path=/trunk/netsurf/; revision=4208
2008-05-26 10:40:00 +00:00
John Mark Bell
b1c8ab83f2 Lose redundant function
svn path=/trunk/netsurf/; revision=4207
2008-05-26 10:37:10 +00:00
John Mark Bell
50f520379b warnings.squash();
svn path=/trunk/netsurf/; revision=4206
2008-05-26 10:34:47 +00:00
Daniel Silverstone
9b73dce1fd Update optimisation/warning flags
svn path=/trunk/netsurf/; revision=4204
2008-05-26 10:16:01 +00:00
John Mark Bell
4d343e3c6d Fix debug build some more. Disable optimisation for debug build.
svn path=/trunk/netsurf/; revision=4203
2008-05-25 23:57:34 +00:00
James Bursa
b53f36ebc2 Add TARGET=debug and fix the debug build.
svn path=/trunk/netsurf/; revision=4202
2008-05-25 23:28:06 +00:00
James Bursa
70da04d69e Simplify code using xmlDocGetRootElement().
svn path=/trunk/netsurf/; revision=4201
2008-05-25 22:31:42 +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 Tytgat
e89c346573 Remove .cvsignore.
svn path=/trunk/netsurf/; revision=4199
2008-05-25 15:23:51 +00:00
John Tytgat
3f6d2a9f0c Contribution from Philip Boulain <prb@ecs.soton.ac.uk>:
This makes url_normalize take care of whitespace in a fairly useful way,
consistent with other browsers:

 - Leading and trailing whitespace is trimmed
 - Internal whitespace is urlescaped

For example,
 "  http://www.google.co.uk/search?q=hello world  "
becomes
 "http://www.google.co.uk/search?q=hello%20world"

Explicit trailing whitespace, e.g. "...hello world%20", is left alone.

The upshot is that if you sloppily copy-paste a URL from IRC or whatnot
into the address bar, NetSurf no longer silently ignores you if you
caught some adjacent whitespace.

svn path=/trunk/netsurf/; revision=4198
2008-05-25 15:04:22 +00:00
John Tytgat
497372c257 Add .PHONY line. Suggestion from Philip Boulain prb@ecs.soton.ac.uk
svn path=/trunk/netsurf/; revision=4197
2008-05-24 12:20:57 +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
5979083a16 Unescape URL before attempting to read filetype
svn path=/trunk/netsurf/; revision=4195
2008-05-24 01:19:21 +00:00
John Mark Bell
2b79c34977 Squash warning
svn path=/trunk/netsurf/; revision=4190
2008-05-23 14:17:31 +00:00
John Mark Bell
a16586c9b7 Use local filetype directly, if we're "downloading" a local file
svn path=/trunk/netsurf/; revision=4189
2008-05-23 13:29:37 +00:00
Daniel Silverstone
b30fde8b21 Use CCACHE if available on non-riscos host platforms
svn path=/trunk/netsurf/; revision=4179
2008-05-19 13:36:32 +00:00
Michael Drake
181573d081 Fix bitmap format comment.
svn path=/trunk/netsurf/; revision=4168
2008-05-16 23:04:41 +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
b15a6af3d2 s/wchar_t/uint32_t/g
We always assumed that the keycode type was 32bits wide, anyway. wchar_t isn't guaranteed to be that big, so isn't remotely portable.

svn path=/trunk/netsurf/; revision=4165
2008-05-16 09:37:22 +00:00
John Mark Bell
baca6796eb Ensure we've got a definition for size_t
svn path=/trunk/netsurf/; revision=4157
2008-05-14 10:23:22 +00:00
John Mark Bell
dd54de03de Remove keypress restrictions from icon validation strings. At some point in future we should do this properly by having the validation string change dynamically as appropriate.
svn path=/trunk/netsurf/; revision=4156
2008-05-13 23:31:21 +00:00
John Mark Bell
1f2219aead Make this obey WITH_MNG correctly -- previously included libmng.h regardless
svn path=/trunk/netsurf/; revision=4155
2008-05-13 21:38:30 +00:00
John Mark Bell
23fb72ea6b The core code has always assumed a locale of "C".
Do not change the locale globally, else things will break in weird and 
wonderful ways.

Introduce utils/locale.[ch], which provide locale-specific wrappers for various 
functions (currently just the <ctype.h> ones).

Fix up the few places I can see that actually require that the underlying 
locale is paid attention to.

Some notes:

  1) The GTK frontend code has not been touched. It is possible that reading of 
     numeric values (e.g. from the preferences dialogue) may break with this 
     change, particularly in locales that use something other than '.' as their
     decimal separator.
  2) The search code is left unchanged (i.e. assuming a locale of "C"). 
     This may break case insensitive matching of non-ASCII characters. 
     I doubt that ever actually worked, anyway. In future, it should use
     Unicode case conversion to achieve the same effect.
  3) The text input handling in the core makes use of isspace() to detect
     word boundaries. This is fine for western languages (even in the C locale,
     which it's currently assuming). It will, however, break for CJK et. al. 
     (this has always been the case, rather than being a new issue)
  4) text-transform uses locale-specific variants of to{lower,upper}. In future
     this should probably be performing Unicode case conversion. This is the
     only part of the core code that makes use of locale information.

In future, if you require locale-specific behaviour, do the following:

  setlocale(LC_<whatever>, "");
  <your operation(s) here>
  setlocale(LC_<whatever>, "C");

  The first setlocale will change the current locale to the native environment.
  The second setlocale will reset the current locale to "C".
  Any value other than "" or "C" is probably a bug, unless there's a really
  good reason for it.

In the long term, it is expected that all locale-dependent code will reside in 
platform frontends -- the core being wholly locale agnostic (though assuming 
"C" for things like decimal separators).


svn path=/trunk/netsurf/; revision=4153
2008-05-13 14:37:44 +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
ab62e61b55 Fix RO5 IconSprites
svn path=/trunk/netsurf/; revision=4143
2008-05-11 10:04:11 +00:00
John Mark Bell
301d71385d Correct file types
svn path=/trunk/netsurf/; revision=4142
2008-05-10 12:03:45 +00:00
John Mark Bell
e6416eed54 Fix IconSprites on RO6
svn path=/trunk/netsurf/; revision=4141
2008-05-10 11:59:09 +00:00
Michael Drake
239ac40bd7 Add NetSurf Scrap/Choices directory openers.
svn path=/trunk/netsurf/; revision=4139
2008-05-10 11:12:19 +00:00
John Mark Bell
6d4e871260 Require C99 SCL in Run file. Provides a friendlier error message than "Integer too big for SharedCLibrary" when attempting to load modules that require either a 32bit or C99-capable SCL (e.g. AcornURI or Iconv)
svn path=/trunk/netsurf/; revision=4124
2008-05-04 19:04:03 +00:00
John Mark Bell
cc9ab23b04 Add html extensions to minimal MIME type hash
svn path=/trunk/netsurf/; revision=4110
2008-04-28 11:08:35 +00:00
Michael Drake
7e28ca26d1 Accomodate text area scrollbars in fixed widths. Fix radio button / checkbox issue.
svn path=/trunk/netsurf/; revision=4108
2008-04-25 14:57:36 +00:00
Michael Drake
4110152a62 Change handling of form element widths / heights.
svn path=/trunk/netsurf/; revision=4107
2008-04-25 14:15:18 +00:00
Michael Drake
fc4e39f5b8 Make floats that follow a cleared float heed the clear. Fixes position of search form on BBC homepage.
svn path=/trunk/netsurf/; revision=4104
2008-04-23 18:49:11 +00:00
Michael Drake
e6e0fa0b32 Maybe fix table layout problem caused by r4100.
svn path=/trunk/netsurf/; revision=4103
2008-04-23 10:45:46 +00:00
Michael Drake
c4146fb8ff Fix absolute positioning when there's a float between the box and its containing block.
svn path=/trunk/netsurf/; revision=4101
2008-04-21 22:02:33 +00:00
Michael Drake
05e8696fc4 Improve handling of absolutely positioned table cells. Corrects positioning of "Weather" box contents on BBC homepage.
svn path=/trunk/netsurf/; revision=4100
2008-04-20 15:49:25 +00:00
John Mark Bell
c5da2c906c Don't change URL bar contents until we've actually fetched the page.
svn path=/trunk/netsurf/; revision=4099
2008-04-19 11:13:56 +00:00