Commit Graph

934 Commits

Author SHA1 Message Date
Vincent Sanders
ccac301176 Fix a signed comparison error in nsurl parsing.
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.
2015-07-04 09:36:46 +01:00
Vincent Sanders
a94ae7a80a Allow translation messages to be compiled in as GTK resources 2015-06-21 23:27:22 +01: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
25d7f0c657 use logfile as variable name as cocoa gives an error about the symbol type of logf 2015-05-29 16:32:12 +01:00
Vincent Sanders
faf9b9d919 Improve logging interface to reduce overhead
This reduces logging overhead by only calling the log output function
once instead of three times.

Additionally the nslog_gettime interface no longer needs to be
exported and the static function is directly inlined further reducing
function call overhead.

Finally the appending of a newline uses fputc instead of a full printf
call which is considerably more simple and further reduces overhead
time.
2015-05-29 16:18:18 +01:00
Vincent Sanders
4324bf535f Allow verbose logging to be directed to a file 2015-05-29 16:14:42 +01:00
Vincent Sanders
0d811963c1 fixup all the remaining logging macro callsites
The semantic patch tool appears to have missed some difficult to
reason about callsites which have now been manually cleaned up
2015-05-28 17:06:18 +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
2092ab252f utility to translate public suffix data into a c code 2015-05-06 23:45:48 +01:00
Vincent Sanders
408e818cbe Update posix source version on monkey frontend to reflect oyr usage of scandir 2015-05-03 14:46:29 +01:00
Vincent Sanders
47d08b6506 Revert "Fix RISC OS not having a pread/pwrite implementation."
This reverts commit 82c7a7a4ba.

Conflicts:
	content/fs_backing_store.c
2015-04-02 16:37:04 +01:00
Vincent Sanders
82c7a7a4ba Fix RISC OS not having a pread/pwrite implementation. 2015-03-31 22:41:37 +01:00
Michael Drake
78663e9111 Remove fragment from nsurl hash. 2015-03-27 11:58:52 +00:00
Vincent Sanders
a487f7e611 Move win32 window operations into their own module
This splits up a great deal of the win32 window code out from other
gui code. It also remove large quantities of unused and junk
variables and functions.
2015-03-12 23:48:53 +00:00
Michael Drake
7247f48d2f Remove unused #include. 2015-03-05 20:17:42 +00:00
Michael Drake
ac636100e8 Remove include of nsurl from corestrings.h 2015-02-26 16:58:41 +00:00
Michael Drake
30909f8ed5 Move FILE_SCHEME_PREFIX to corestrings. 2015-02-26 16:14:23 +00:00
Vincent Sanders
d61444e703 add missing errno include 2015-01-30 17:13:35 +00:00
Vincent Sanders
791a45141d Updated time_t fallback reading to not fail if the value is 0
The non strptime fallback reading of time_t values would report
faliure if the value it read was 0 which is a valid time. This fixes
this path to only fail if there was an actual error processing the
value.
2015-01-30 17:04:34 +00:00
Chris Young
989a5da334 Cast timeval.usec calculations to int as AmigaOS3 has some conflicting headers which means it can be treated as an unsigned value.
This ensures the log time is always correct.
2015-01-19 19:15:48 +00:00
Vincent Sanders
2d58f8360e jenkins helper script quoting in shell wilidcard case was wrong 2014-12-21 14:15:58 +00:00
Vincent Sanders
3f331a701a add freebsd to jenkins build script for gtk, framebuffer and monkey 2014-12-21 13:59:39 +00:00
Vincent Sanders
8e60d32831 remove some warnings from freebsd build 2014-12-21 02:01:45 +00:00
Vincent Sanders
6684b938e2 Update the coverity build script for buildsystem HOST/BUILD changes 2014-12-19 16:56:43 +00:00
Vincent Sanders
876b6cbeb0 fix BUILD/HOST usage to work with fixed buildsystem 2014-12-19 13:30:20 +00:00
Vincent Sanders
0f6f0a0169 Improve message split generation
This changes the message splitting code to ensure that a translation
is generated for every different key using a specified language as a
fallback if no translation is available.

This also allows for a messages to be generated when there is no
fallback at all and when the translation is the same as the fallback
language
2014-12-02 16:27:24 +00:00
Vincent Sanders
9bc07e8d8f make coverity build script use updated environment variables 2014-11-30 00:37:35 +00:00
Vincent Sanders
669df172ec Fix my spelling of teh everywhere 2014-11-18 17:16:26 +00:00
Vincent Sanders
1deb36759b uipdate jenkins build script to confirm to new core buildsystem 2014-11-16 13:33:08 +00:00
Vincent Sanders
97759f62af USe the externally built conveniance utf8proc library 2014-11-14 13:46:08 +00:00
Vincent Sanders
9fde3502b6 doxygen cleanups in utils 2014-11-12 23:27:13 +00:00
Vincent Sanders
e32a2ad46e Doxygen fixes 2014-11-09 15:28:03 +00:00
Vincent Sanders
8f64d5d223 Improve Doxygen documentation 2014-11-08 12:35:11 +00:00
Vincent Sanders
f287379a7c Fix several doxygen issues 2014-11-08 11:38:20 +00:00
Vincent Sanders
3fc1fe0493 fix dumb mistake in missing a close bracket. 2014-11-04 20:53:19 +00:00
Vincent Sanders
d85b74fd72 change logic to check for false instead of not true to fix coverity 1250328 2014-11-04 20:41:31 +00:00
Vincent Sanders
ad343eccb1 remove unecessary utils/types.h
This cleans up this header and moves the functionality into more
useful places while reducing the include complexity but only pulling
in whats required.
2014-11-02 20:10:32 +00:00
Vincent Sanders
c31c4babe1 Change contextual content retrieval to browser features.
Update the API which allows frontends to acquire the page features
(images, link urls or form elements) present at the given coordinates
within a browser window.

By making this an explicit browser_window API and using the browser.h
header for the associated data structure with a more appropriate API
naming the usage is much more obvious and contained.

Additionally the link url is now passed around as a nsurl stopping it
being converted from nsurl to text and back again several times.
2014-11-02 15:46:42 +00:00
Michael Drake
98b6d02df6 Move host_is_ip_address into urldb, as that's the only thing that cares. 2014-10-31 14:31:06 +00:00
Vincent Sanders
02ff3920ce remove unused url_init function 2014-10-31 00:50:32 +00:00
Vincent Sanders
ce3d991918 use nsurl_nice and remove url_nice
change all callers over to using new API for generating nice filenames
from a url and remove the old API.
2014-10-31 00:24:57 +00:00
Michael Drake
07376fc96b Remove unused variable. 2014-10-30 22:47:25 +00:00
Michael Drake
13832a453a Add a nsurl_nice, which can replace url_nice. 2014-10-30 22:34:09 +00:00
Michael Drake
3ff7557c34 Add a lwc corestring for "/". 2014-10-30 22:34:09 +00:00
Vincent Sanders
c646d05ae5 update nsurl file header to contain references to the specifications it implements 2014-10-29 23:41:13 +00:00
Vincent Sanders
d204d6d555 Clean up saving as PDF
This removes the global PDF_Password interface that had completely
bitrotted and moves it into the standard misc operation table with a
sensible defualt implementation.

This also cleans up and fixes the gtk frontend implementation of the
pdf password callback so it compiles.

Finally this moves the implementation to a sensible place alongside
the other exporters reducing target makefile complexity futher.
2014-10-26 23:53:14 +00:00
Vincent Sanders
14e2829489 remove the die API from the core.
The die() API for abnormal termination does not belong within the core
of netsurf and instead errors are propogated back to the callers.

This is the final part of this change and the API is now only used within
some parts of the frontends
2014-10-26 12:42:53 +00:00
Michael Drake
64d591676b Remove unused url_components stuff. 2014-10-26 10:23:28 +00:00
Michael Drake
1ccfcfe953 Remove unused url_path function. 2014-10-26 10:21:27 +00:00
Michael Drake
d732b0c769 Remove unused url_scheme function. 2014-10-26 10:18:39 +00:00
Vincent Sanders
e39606c411 make regex wrapper return errors instead of just aborting 2014-10-25 23:07:00 +01:00
Vincent Sanders
7cf5cf7cb7 fix doc comments 2014-10-25 17:12:16 +01:00
Vincent Sanders
94ab63319f Improve the message loading API to return error codes.
Returning an error instead of simply calling die allows more robust
error handling. Secondly initialisation may continue even if the
messages have not been loaded which is more friendly than simply
dropping dead with no communication to the user.
2014-10-25 12:45:32 +01: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
1a2040bc72 Trivial sepelling, documentation and whitespace cleanups 2014-10-10 13:01:20 +01:00
Chris Young
a90f5d1c8b Stop the Amiga build complaining about redefined strndup 2014-09-20 13:42:47 +01:00
Michael Drake
d0a4020d16 Fix test rig leak. (cppcheck) 2014-09-06 07:49:04 +01:00
Michael Drake
050b76d49a Handle realloc failure. 2014-09-05 23:25:43 +01:00
Vincent Sanders
ef5b234080 we build for haiku not beos 2014-09-05 13:18:39 +01:00
Vincent Sanders
9b62f1ec53 fix output target name 2014-09-05 01:10:12 +01:00
Vincent Sanders
a8f83d729c update jenkins build script for use with beos 2014-09-05 00:52:37 +01:00
Vincent Sanders
37755fb135 add incomplete scheme fetcher for javascript urls 2014-08-25 15:59:52 -07:00
Vincent Sanders
ea1e68feba remove old svn script 2014-08-17 08:46:01 +01:00
Vincent Sanders
d0da99beca extend gtk viewdata to open files in an editor using the freedesktop default app specification 2014-08-16 23:33:12 +01:00
Michael Drake
a807d762f9 mailto urls don't have passwords or ports, so we don't need to look for ':'. 2014-08-04 14:49:35 +01:00
Michael Drake
04ea4b52a0 Add debug. 2014-08-04 14:48:32 +01:00
Vincent Sanders
af16c38d2d fix DOM tree dump debug 2014-08-04 00:37:21 +01:00
Vincent Sanders
5ce4f11eac add link context menu to gtk and add link copying and bookmarking 2014-07-07 23:29:06 +01:00
Vincent Sanders
8848f754e0 documentation fixes and cleanups 2014-07-02 16:39:08 +01:00
Vincent Sanders
06eb81235d fix fetchers include on windows 2014-07-01 09:17:22 +01:00
Vincent Sanders
16dea2e2bd stop idna (en/de)code asploding when the passed host begins with a . 2014-06-10 23:38:35 +01:00
Chris Young
2462f5658e Fix memory leak on error 2014-06-10 19:27:39 +01:00
Vincent Sanders
d2b77a40a9 fix memory leaks in error paths. (coverity 1220852 and 1220851) 2014-06-10 00:22:44 +01:00
Michael Drake
f6fec1a8d7 Put ultra-verbose logging inside NSURL_DEBUG #ifdef. 2014-06-09 21:22:25 +01:00
Vincent Sanders
4488c8a2e4 fallback to old url creation behaviour if the IDNA host parse fails 2014-06-09 18:05:36 +01:00
Vincent Sanders
8e29e517d5 fix disc cache size option to be unsigned 2014-06-09 13:13:59 +01:00
Vincent Sanders
f1c2dde13b extend file table with mkdir all and make fs backing store use it.
enable fs backing store for RISC OS.
2014-06-05 12:06:47 +01:00
Daniel Silverstone
4641769ae5 Make chris' work compile without warning and not infinite-loop where I spotted it 2014-06-04 13:50:26 +01:00
Chris Young
eee7189f05 Normalise intermediary UCS-4 string when verifying ACE labels 2014-06-04 13:24:24 +01:00
Chris Young
db0856606a IDNA2008 support. 2014-06-04 13:24:24 +01:00
Chris Young
9d2d717e9f Import Punycode reference implementation. 2014-06-04 13:24:24 +01:00
Chris Young
9fb4fd738a Import a local modified version of utf8proc for Unicode normalisation. 2014-06-04 13:24:24 +01:00
Chris Young
e5d5e68eb5 Required IDNA/Unicode properties files and generation. 2014-06-04 13:24:24 +01:00
Vincent Sanders
7c0da1e94f annotate die() as not returning 2014-05-28 15:12:58 +01:00
Vincent Sanders
00b6cfc57e rework path to url mapping functions to convert from and to nsurl 2014-05-26 23:52:36 +01:00
Michael Drake
1f337f292d Fix fread error handling. 2014-05-26 14:03:20 +01:00
Daniel Silverstone
cb978fe470 Attempt to fix Jenkins build for cocoa 2014-05-18 22:09:54 +01:00
Vincent Sanders
3b42f73b5a check fseek return value (coverity 1109837) 2014-05-18 14:40:39 +01:00
Vincent Sanders
17b347a260 check mkdir results (coverity 1109838) 2014-05-18 14:40:39 +01:00
Vincent Sanders
39518eb3c1 fix possible buffer termination error (coverity 1195410) 2014-05-18 10:44:51 +01:00
Michael Drake
982fc516cc Move old cache path. 2014-05-16 14:04:49 +01:00
Vincent Sanders
ef00272e2f add helpers for time_t reading/writing 2014-05-15 01:18:52 +01:00
Vincent Sanders
07e4924254 make vsnstrjoin correctly check for null arguments. 2014-05-13 17:39:56 +01:00
Vincent Sanders
4784273195 fix typo in nsc_time_strptime 2014-05-13 16:59:30 +01:00
Vincent Sanders
6532346277 add struct tm definition and fix build error 2014-05-13 16:46:48 +01:00
Vincent Sanders
1a3ee6090d add strptime compatability 2014-05-13 16:37:49 +01:00
Vincent Sanders
06091eee36 fix fseek error return checking (fixes coverity 1109839) 2014-05-11 23:48:40 +01:00
Vincent Sanders
c3e2dc9005 check return values of fseek (fixes coverity 1109840) 2014-05-11 23:45:42 +01:00
Vincent Sanders
83fa2a9482 check return from fseek (fixes coverity 1109841) 2014-05-11 23:43:36 +01:00
Vincent Sanders
f94bc67107 safely copy header name and author (fixes coverity 1195408) 2014-05-11 23:38:18 +01:00
Vincent Sanders
4776de4001 ensure filename is null terminated (fix coverity 1195409) 2014-05-11 23:35:12 +01:00
Vincent Sanders
d3ddb39102 fix possible missing null termination (coverity 1195410 and 1195411 ) 2014-05-11 23:29:55 +01:00
Vincent Sanders
39b0393d31 cleanup utils header, remove cruft and add documentation 2014-05-11 21:31:14 +01:00
Vincent Sanders
7dc170e6d8 we now ensure the operations table is set up early enough the null check is not required 2014-05-10 11:17:34 +01:00
Vincent Sanders
429d6e20f7 remove unused url operations 2014-05-09 10:30:24 +01:00
Vincent Sanders
096bd47ab0 refactor url utility functions to use standard nserror codes and have appropriate documentation. 2014-05-08 00:16:50 +01:00
Vincent Sanders
6349704b5e fix silly errors in atari and amiga file operation table change 2014-05-07 16:38:58 +01:00
Vincent Sanders
c56642819e add file operations table and make all frontends use it.
This rationalises the path construction and basename file
operations. The default implementation is POSIX which works for all
frontends except windows, riscos and amiga which have differeing path
separators and rules.

These implementations are significantly more robust than the previous
nine implementations and also do not use unsafe strncpy or buffers
with arbitrary length limits.

These implementations also carry full documentation comments.
2014-05-07 16:24:51 +01:00
Vincent Sanders
c1e2da80df add string utility to join strings 2014-05-07 16:24:30 +01:00
Vincent Sanders
0c5c7159d8 remove uncessary includes 2014-05-02 12:26:25 +01:00
Vincent Sanders
b7c744cf32 make brackets match 2014-05-02 12:01:37 +01:00
Vincent Sanders
3c8769cc4b OpenBSD headers have strcasestr 2014-05-02 11:46:39 +01:00
Vincent Sanders
99c997bfc6 adjust javascript library build parameters for openbsd 2014-05-02 11:16:32 +01:00
Vincent Sanders
c80a281ea5 update to cope with make tool naming 2014-05-02 11:08:01 +01:00
Vincent Sanders
1eb49059ab add OpenBSD to jenkins build script 2014-05-02 11:03:43 +01:00
Vincent Sanders
5dd6fa6f22 use compatability macro for mkdir 2014-04-28 17:38:15 +01:00
Vincent Sanders
1fd565cba7 make GTK configuration handling conform to XDG specification. 2014-04-28 16:37:00 +01:00
Michael Drake
2c4825cb38 Remove excessive logging. 2014-04-18 17:30:28 +01:00
Michael Drake
d1223950d7 Handle some directories already existing.
When creating the path to the cache directory we were
  giving up on the first directory that already existed.

  This prevented the path to the cache directory getting
  made, which prevented view-source from working if the
  path was only patially available.
2014-04-18 17:12:52 +01:00
Michael Drake
2a4f7f6b65 Add more logging for filename init. 2014-04-18 17:07:24 +01:00
Michael Drake
55415ed6cd Add logging to filename_initialise(). 2014-04-18 16:50:58 +01:00
Michael Drake
9c60417f73 Simplify DOM node walker. 2014-03-31 22:09:45 +01:00
Vincent Sanders
20b3c40816 make nsurl_defragment() API more obvious and remove duplicated parameter checking 2014-03-09 16:20:53 +00:00
Vincent Sanders
87f6314dab move scheduleing into browser operation table 2014-03-09 15:37:40 +00:00
Michael Drake
1228cd7576 Save a call to lwc_string_length. 2014-02-15 12:39:09 +00:00
Michael Drake
4a59399cd7 Ensure allocation includes space for fragment. 2014-02-15 12:32:59 +00:00
Michael Drake
42be1ffa7b Reject creation of http(s) urls without hosts. 2014-02-11 11:34:10 +00:00
Michael Drake
22d15380f4 Add function to get browser window's extents. 2014-02-08 16:03:06 +00:00
Michael Drake
8bc3a80320 Add function to get bw's URL. 2014-02-08 15:00:08 +00:00
Vincent Sanders
886a3106db move utf8 local conversion operations to table 2014-02-01 22:17:36 +00: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
654da2ffb5 move utf8 conversion routines to use nserror instead of their own error enum 2014-01-28 21:40:13 +00:00
Vincent Sanders
8ce0a10670 move path_to_url and url_to_path to fetch operation table 2014-01-25 23:01:32 +00:00
Michael Drake
96e5368d34 Use corestring. 2014-01-25 09:53:54 +00:00
Michael Drake
ae6874d308 Just ref a corestring. 2014-01-24 23:19:46 +00:00
Michael Drake
5787f8335e Simplify and optimise icon handling. 2014-01-24 23:13:18 +00:00
Michael Drake
14238615a4 Use corestrings for "about", "data", and "resource". 2014-01-24 20:08:41 +00:00
Michael Drake
c4e2fff5a4 Use corestrings for fetch module's lwc strings. 2014-01-24 19:25:07 +00:00
Michael Drake
72510f550b Use corestrings in box construction. 2014-01-24 18:58:12 +00:00
Vincent Sanders
a2247a75a3 cleanup copyright headers and some doc comments 2014-01-16 13:24:14 +00:00
Vincent Sanders
d47fed4524 move 401 login into operation table 2014-01-16 00:52:17 +00:00
Vincent Sanders
38cb39339a move filename_from_path and path_add_part into gui operation tables 2014-01-16 00:01:25 +00:00
Daniel Silverstone
6bf609a1a4 Support image inputs 2014-01-05 16:14:17 +00:00
Daniel Silverstone
b1e6c63a2f Rewrite form_successful_controls() to use the DOM.
This stops image inputs from working temporarily, but makes
inputs inside display:none work correctly.  As such, this is
a net-win.
2014-01-05 15:51:30 +00:00
Daniel Silverstone
a5bb596eb3 Ensure that file inputs update the dom node and annotate with the unencoded filename 2014-01-04 18:02:50 +00:00
Vincent Sanders
ad3f3590e4 Merge branch 'mmu_man/haiku-fixes' 2014-01-01 19:12:20 +00:00
Michael Drake
cde62790f6 Update for new lpu API. 2013-12-14 23:17:50 +00:00
Michael Drake
fabc086d4a Rename libcss_node_data key for libdom node user data. 2013-12-13 23:02:15 +00:00
François Revol
d6561e51e0 Fix for gcc2 flexible array declaration 2013-12-07 01:16:22 +01:00
Michael Drake
b0fc9bfcb9 Optimise selection by generating node ancestor element/class/id name bloom filters for new libcss API. 2013-12-01 19:15:14 +00:00
Vincent Sanders
14387a53b7 check mkdir call for errors (coverity 1109834) 2013-11-28 23:10:29 +00:00
Vincent Sanders
857dc3d8c8 check return from mkdir (coverity 1109834) 2013-11-27 22:35:42 +00:00
Michael Drake
c933b0aff9 Sort non zero-padded numerical filename parts correctly. 2013-11-14 21:01:51 +00:00
Michael Drake
2a09b66040 Add own implementations of alphasort and scandir when not available. 2013-11-14 19:01:16 +00:00
Michael Drake
7a920ace39 Marginally cleaner handling of scandir absence. 2013-11-11 11:38:48 +00:00
Vincent Sanders
3e070502e6 improve default setting so we can override from CI system 2013-11-07 12:16:58 +00:00
Vincent Sanders
8442ab42fb add script so CI system can run build and upload results to coverity 2013-11-07 12:03:25 +00:00
Vincent Sanders
ce2e1e731d update identifier for package to be cleaned 2013-11-05 08:50:01 +00:00
Vincent Sanders
785806d6ac setup old identifier before values get changed 2013-11-04 19:02:55 +00:00
Vincent Sanders
3d3b9fd815 remove old build artifacts 2013-11-04 18:50:45 +00:00
Vincent Sanders
6b29a697b9 check ftell return value coverity 1109870 2013-10-25 21:28:58 +01:00
Vincent Sanders
f29306cc9a improve gtk source save to use gtk overwrite protection feature coverity 1109873 2013-10-25 21:25:56 +01:00
Michael Drake
0e4a605729 Remove unnecessary strlen. 2013-10-24 13:35:58 +01:00
Michael Drake
0c44eb081e Free string vector correctly. 2013-10-24 12:55:48 +01:00
Vincent Sanders
b9c2b5df65 make js library selection target dependant 2013-09-03 16:07:57 +01:00
Michael Drake
ee7df2761f Make dom node children iterator return nserror. 2013-08-16 08:25:24 +01:00
Michael Drake
8747398c98 Merge branch 'master' of git://git.netsurf-browser.org/netsurf 2013-06-03 17:10:14 +01:00
Vincent Sanders
bccaa05fdb add finalisation to options and document the API better 2013-06-01 16:09:39 +01:00
Vincent Sanders
9bd2969876 amiga is the only user of the very odd usage of the options API 2013-06-01 16:09:26 +01:00
Chris Young
3b971bb1a7 Remove bool default setter as the user will struggle to override it 2013-06-01 15:21:08 +01:00
Chris Young
0bb08cc5d2 Macros for setting default options and updating user options if they are "as default" 2013-06-01 14:57:49 +01:00
Michael Drake
de85b4348a Include stdbool.h. 2013-05-31 10:02:27 +01:00
Vincent Sanders
a4f67018fa fix import of old broken Choices 2013-05-29 07:59:27 +01:00
Michael Drake
44f91c9fc8 Ensure colour values around #888888 can be read in HTML output. 2013-05-28 22:15:29 +01:00
Vincent Sanders
68c2013504 add provenance to about:config 2013-05-28 21:36:46 +01:00
Vincent Sanders
06d87fec2b if the colour value is unusable do not assign garbage to teh option 2013-05-28 20:29:37 +01:00
Vincent Sanders
45d309c0e3 copy the options data with memcpy instead 2013-05-28 20:04:42 +01:00
Vincent Sanders
a92e5930ff fixup issues with new options API merge 2013-05-28 16:44:46 +01:00
Vincent Sanders
4ae69da5ea build new options code and remove old 2013-05-28 14:16:11 +01:00
Vincent Sanders
a2769ec68b add new option API and implementation 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
Vincent Sanders
447c0fc271 ensure downloaded files are not interpreted 2013-05-22 19:12:26 +01:00
Rob Kendrick (humdrum)
bb08964f27 Merge branch 'master' into rjek/bloom 2013-05-17 13:15:25 +01:00
Michael Drake
39cc1a6d4a Add function to get a nsurl's hash value. 2013-05-17 12:25:04 +01:00
Rob Kendrick (humdrum)
60e8f11850 urldb maintains a bloom filter of URLs contained within and consults it when searching 2013-05-17 11:40:43 +01:00
Rob Kendrick (humdrum)
0c45ed935d Better bit and byte selection 2013-05-16 17:24:05 +01:00
Rob Kendrick (humdrum)
7d60132816 Painfully trivial bloom filter implementation to experiment with optimising urldb lookups 2013-05-16 17:15:29 +01:00
Michael Drake
023c014ac4 Tidy up cached descriptor usage and ensure "shrink-wrap" realloc call only ever has to shrink. 2013-05-15 23:30:01 +01:00
Michael Drake
51a5febad7 Cache conversion descriptor since this func. is called many times in series for the same conversion. (UTF-8 --> iso-8859-1) 2013-05-15 22:13:30 +01:00
Vincent Sanders
bb9a7bbe6d update with x86 Linux proper triplet 2013-05-12 18:40:53 +01:00
Vincent Sanders
e6eecc098b improve script to use case statements as appropriate and fail correctly for unsupported usage 2013-05-11 10:45:19 +01:00
Vincent Sanders
29086c377f add jenkins build script 2013-05-10 19:38:13 +01:00
Vivek Dasmohapatra
70b1a8b1ce Add new translation entries to the master file when importing 2013-05-07 22:20:11 +01:00
Vivek Dasmohapatra
9c6e4c7eb5 Fix unescaping when importing transifex/java-properties format translations 2013-05-07 22:20:11 +01:00
Vivek Dasmohapatra
f4af0d86e2 import messages from other formats into a fatmessages file 2013-05-06 14:33:33 +01:00
Vincent Sanders
04c486ab54 perl script to fetch translated resources from transifex 2013-05-06 14:31:56 +01:00
Vincent Sanders
c3530a0c39 make filepath_findfile() rely on realpath allocating the output buffer. 2013-05-04 16:42:00 +01:00
Vincent Sanders
52c5cccdeb cleanup tree_create_leaf_node text ownership 2013-05-04 09:49:11 +01:00
Vivek Dasmohapatra
4c4dff3384 Improvements to generated output 2013-05-02 23:08:18 +01:00
Vivek Dasmohapatra
820767e417 Improve the message split script to allow alternate output formats 2013-05-01 11:45:09 +01:00
Michael Drake
c3f21572ed Add function to get the byte length of n characters in a utf8 string. 2013-03-17 22:01:42 +00:00
Vincent Sanders
95e726c7cc split sources lists out to their subdirectories as first step towards using core buildsystem 2013-03-11 17:53:52 +00:00
Vincent Sanders
cc7f45898b refactor stylesheet handling to separate object from within html rendering 2013-02-24 16:08:37 +00:00
Michael Drake
f72da52cfc Fix over-allocation of space for hash table chain heads. 2013-02-22 22:33:36 +00:00
Michael Drake
d8af191c0a Include stdbool.h 2013-02-22 13:31:51 +00:00
Michael Drake
7088908cc2 Merge branch 'master' of git://git.netsurf-browser.org/netsurf
Conflicts of doom:
	render/html.c
2013-02-22 13:24:36 +00:00
Michael Drake
c2a718075a A load of refactoring of how content selection and input work.
Keypresses now go via content interface.
Contents don't shove the selection object into browser windows any more.
Contents report selection existence by sending message.
HTML content keeps track of where selections in it exist.
Contents report whether they have input focus via caret setting msg.
Caret can be hidden (can still input/paste) or removed.
Consolidate textarea selection handling.
Make textarea report its selection status changes to client.
Various textarea fixes.
Changed how we decide when to clear selections, and give focus.
2013-02-22 12:19:35 +00:00
Vincent Sanders
5be20a0d6e change stylesheet fetching to be generated from the default dom events 2013-02-19 23:51:16 +00:00
Vincent Sanders
3bfb5b96a7 browser_window_navigate refactor 2013-02-18 11:23:27 +00:00
Vincent Sanders
7ab835df8f implement Element::className 2013-01-23 17:00:13 +00:00
Michael Drake
4e756f6088 Remove architecture from UA string. 2013-01-14 13:59:07 +00:00
John-Mark Bell
a6b08c674f Fix handling of junk input 2013-01-12 20:57:01 +00:00
John-Mark Bell
261528747c Remove code that hasn't been used since 2004. 2013-01-12 02:35:09 +00:00
John-Mark Bell
d0d3d31e97 Revert "Treat cookies from HTTP and HTTPS as identical."
Sadly, this breaks path cookies on HTTPS sites. The correct
fix is to implement RFC6265 in full (probably replacing
urldb with something less complex, too).

This reverts commit 924f8844d4.
2013-01-04 22:06:31 +00:00
John-Mark Bell
568a9c2b8f Remove junk "http_equiv" string. 2013-01-03 00:33:36 +00:00
John-Mark Bell
924f8844d4 Treat cookies from HTTP and HTTPS as identical. 2013-01-03 00:28:51 +00:00
John-Mark Bell
ea3f09a724 Correctly emit entities when serialising to HTML. 2012-12-30 23:37:06 +00:00
Vincent Sanders
347fdf0743 add dom event handler to document object 2012-12-17 14:55:16 +00:00
Vincent Sanders
912b9de928 ensure default action fetcher is set to NULL 2012-12-06 19:33:25 +00:00
Vincent Sanders
646aed64ff change to parameterised parser binding creation 2012-12-06 18:04:43 +00:00
Vincent Sanders
fb5d763d75 extend corestings with event types 2012-11-28 17:19:49 +00:00
Vincent Sanders
ce309aa5a9 add message retrival of error codes ensuring there are messages for all codes 2012-11-26 17:32:57 +00:00
Adrien Destugues - PulkoMandy
eb28188661 Update the BeOS/Haiku port
* Toolbar use HVIF icons on Haiku
* Download window
* Some tweaks to the event loop to let network traffic happen

Signed-off-by: François Revol <revol@free.fr>
2012-11-24 21:39:40 +01:00
Michael Drake
8bccf16158 Check if box with imagemap at point has area at point. 2012-11-22 17:40:20 +00:00
Vincent Sanders
7d83151d1a make nsurl_access() not assert with being passed a NULL url as it is assumed elsewhere this will never fail. 2012-11-22 17:04:26 +00:00
Chris Young
7df658618c Close file when we've finished parsing it. 2012-11-11 11:48:42 +00:00
John-Mark Bell
ce640e59fd Report (and ignore) failure to load non-existent document. (Credit: Chris Young) 2012-11-11 11:31:34 +00:00
Vincent Sanders
a79e098817 remove redundant domutils and put functionality in existing utils/libdom 2012-11-10 11:44:38 +00:00
John-Mark Bell
4d58ed6562 Port hotlist load/save to libdom. 2012-11-09 23:23:04 +00:00
John-Mark Bell
79bd44fcb4 Fix conditionals to be sane 2012-11-09 23:23:04 +00:00
Vincent Sanders
43fb761f45 add document.body, head and documentElement getters
add a dom utility file and use it
2012-11-07 18:53:05 +00:00
Vincent Sanders
2b4a359425 reduce call overhead on log messages 2012-11-05 15:49:23 +00:00
Daniel Silverstone
b23aee2f09 type=search is a new-fangled HTML5 thing which we treat as input and thus give EX width hinting. Closes #3578446 2012-11-04 17:29:26 +00:00
Michael Drake
9ab851a5a9 Fix join with rel part of " ". Add a few tests. 2012-11-02 10:54:34 +00:00
Michael Drake
a526209e74 More useful title info for images. 2012-10-24 18:22:45 +01:00
Vincent Sanders
f18bbd48c7 Improve error handling in html content 2012-10-17 21:52:43 +01:00
Michael Drake
e2bde3482b Remove double ;. 2012-10-16 18:36:34 +01:00
Michael Drake
53b51c8083 Add newline at end of file. 2012-10-14 18:32:15 +01:00
Michael Drake
4fccdf18f3 Move dom walker to utils/libdom.{c|h}. Add a few HTML elements to core strings. 2012-10-12 16:21:29 +01:00
Michael Drake
672fa0a8e2 Make url_{get|reform|destroy}_components static. 2012-10-11 20:12:06 +01:00
Michael Drake
d84e3fd773 Add nsurl_replace_query. Add tests. Make tester itterate remaining lwc_strings. 2012-10-11 19:23:22 +01:00
Michael Drake
4c4e93ea54 Remove unused function. 2012-10-11 17:49:01 +01:00
Michael Drake
8ab9430bb4 Don't need url_compare any more. 2012-10-11 17:24:00 +01:00
Michael Drake
25cacb19c8 Ensure correct error type is returned. 2012-10-11 14:21:13 +01:00
Michael Drake
93ee8f48c1 Fix dead store. 2012-10-11 14:11:49 +01:00
Michael Drake
20425b6914 Ensure non-void functions have a return at the end, even though it shouldn't get there, to squash warning. 2012-10-11 11:58:27 +01:00
Michael Drake
9d29c8b48a Merge branch 'master' of git://git.netsurf-browser.org/netsurf 2012-10-08 20:34:34 +01:00
Michael Drake
1b9b870921 Add "https" lwc string. 2012-10-08 19:26:35 +01:00
Vincent Sanders
5800789df2 trivial docuemntation cleanups to address some of the huge number of docuemntation warnings 2012-10-08 14:52:24 +01:00
Daniel Silverstone
9cb4d00ea9 If you pass CI_BUILD=xxx to make, it will build a CI #xxx into the version string and also mention it in the testament 2012-10-06 18:12:57 +01:00
Michael Drake
aeac82ff17 Remove url_parent. 2012-10-06 14:11:29 +01:00
Michael Drake
40343b740d Add nusrl_parent function, to get parent path URL. 2012-10-06 14:06:38 +01:00
Michael Drake
01f421611c Remove unused functions. 2012-10-05 17:29:19 +01:00
Michael Drake
3d337642bd Don't let it read off the front of empty relative URLs. 2012-10-02 20:20:38 +01:00
Michael Drake
d5e1616a45 Fix select elements. Requires latest libdom. 2012-09-19 14:42:05 +01:00
Michael Drake
b134279644 Allow the presence of form inputs to be obtained without knowledge of html content internals. 2012-08-20 22:02:37 +01:00
Vincent Sanders
cc6c3a7c70 add mint to mmap exclude list 2012-08-13 21:03:37 +01:00
Vincent Sanders
f58b5924a5 alter file fetcher to use mmap where available 2012-08-13 17:00:43 +01:00
Michael Drake
8e8c75cfe3 Fix RO build. 2012-08-13 15:41:26 +01:00
Vincent Sanders
de982b4d3e fix windows build format specifiers
add install target for windows - creates installer rather than actually installing
2012-08-12 21:52:39 +01:00
Michael Drake
b0ca8175bb Dodge a clang warning. 2012-08-09 17:44:59 +01:00
Vincent Sanders
db76dd3b1a extend completion types 2012-07-30 22:55:13 +01:00
Michael Drake
4bd23e73ab s/object/option/ 2012-07-26 18:27:15 +01:00
Michael Drake
2f408f0ecb More use of interns. 2012-07-26 15:57:33 +01:00
Michael Drake
81e079e747 Use interns for string comparisons. 2012-07-26 14:49:27 +01:00
Vincent Sanders
25cdea3351 doxygen serious warning cleanup 2012-07-24 16:19:49 +01:00
Michael Drake
26a92340e2 Compare interns instead of strings in html_forms.c 2012-07-23 12:06:43 +01:00
Michael Drake
f6f2bcbcde Interned string cleanup, phase 6 (final): Move html.c to corestring. 2012-07-22 23:28:45 +01:00
Michael Drake
5dadb1a0ec Interned string cleanup, phase 5: Move imagemap.c to corestring. 2012-07-22 20:52:34 +01:00
Michael Drake
1947019095 Interned string cleanup, phase 4: Move html_script.c to corestring. 2012-07-22 18:58:22 +01:00
Michael Drake
9de20d9a1a Interned string cleanup, phase 3: Move html_forms.c to corestring. 2012-07-22 18:01:10 +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
98e2b3f4df git-testament: Cope with detached HEAD better 2012-07-15 13:56:33 +01:00
Daniel Silverstone
ea5a8ed771 Make log times line up for neatness 2012-07-07 18:01:57 +01:00
Chris Young
7ae14f77a2 Ensure backslashes are escaped in the GECOS string. Fixes a warning when building under Windows. 2012-07-07 10:14:44 +01:00
John Mark Bell
a1b119b2cc Remove bogus sanity checks -- the content factory removed the need for these.
svn path=/trunk/netsurf/; revision=13988
2012-06-26 23:06:37 +00:00
Daniel Silverstone
0437f81c55 Testament generation now supports git
svn path=/trunk/netsurf/; revision=13946
2012-06-04 15:48:21 +00:00
Daniel Silverstone
9dc9e36bc3 Fix FTP detection. Thanks to Etienne Cochard <etienne.cochard@gmail.com> for spotting the bug.
svn path=/trunk/netsurf/; revision=13930
2012-05-23 10:34:30 +00:00
François Revel
647a36e2ee Redo r13857 differently, to avoid issues with non-unixish shells.
svn path=/trunk/netsurf/; revision=13858
2012-04-12 18:17:56 +00:00
François Revel
480282085f Make sure we use the default locale before parsing output of a localized program.
This fixes generating the testament here.

svn path=/trunk/netsurf/; revision=13857
2012-04-12 16:42:02 +00:00
Rob Kendrick
0adac87454 Add a perl script for splitting out messages files again
svn path=/trunk/netsurf/; revision=13669
2012-03-25 10:26:02 +00:00
Rob Kendrick
104e19994e Fix message merging script's manipulation patterns to mean we don't need any code changes on the C side.
svn path=/trunk/netsurf/; revision=13668
2012-03-25 10:25:15 +00:00
Rob Kendrick
99701232b2 Script to merge messages files. More tag manipulation patterns needed.
svn path=/trunk/netsurf/; revision=13662
2012-03-25 09:39:54 +00:00
François Revel
57676ad1c0 Reworked r13532 in a cleaner way. The FLEX_ARRAY_LEN_DECL macro from utils.h should be used when declaring an empty array at end of struct.
svn path=/trunk/netsurf/; revision=13535
2012-03-19 18:24:43 +00:00
François Revel
3d3bb0c5cf Workaround use of C99 flex array. gcc2 did not support it, only 0-len arrays. Possibly a FLEX_ARRAY_LEN macro could be defined in utils.h instead.
svn path=/trunk/netsurf/; revision=13532
2012-03-19 02:45:53 +00:00
Vincent Sanders
c0b0dbd373 fix incorrect type in message loading
zlib has changed 
typedef voidp gzFile;
to 
typedef struct gzFile_s *gzFile;

historically the gzFile *fp has efectively expanded to void**fp
The compiler considerd void ** to be identical to void* as void cannot 
be dereferenced and compilation suceeded. 
With a concrete type it does not work.


svn path=/trunk/netsurf/; revision=13517
2012-03-14 16:42:02 +00:00
John Mark Bell
26a1bb7718 Use S_IRWXU where appropriate
svn path=/trunk/netsurf/; revision=13439
2012-02-10 20:02:13 +00:00
Michael Drake
67f2470d5a Pass whether background images are wanted in redraw_context.
svn path=/trunk/netsurf/; revision=13335
2011-12-23 22:39:25 +00:00
John Mark Bell
6ef2df13f7 Fix const correctness
svn path=/trunk/netsurf/; revision=13228
2011-12-04 11:12:17 +00:00
Michael Drake
714f07c48b Rename nsurl_enquire to nsurl_has_component.
svn path=/trunk/netsurf/; revision=13183
2011-11-27 18:32:06 +00:00
Michael Drake
de10eff59c Don't escape '|'.
svn path=/trunk/netsurf/; revision=13162
2011-11-23 16:27:20 +00:00
Michael Drake
04f6957141 Fix handling of bad mailto: urls.
svn path=/trunk/netsurf/; revision=13113
2011-11-03 12:15:32 +00:00
Michael Drake
3ecf3c1eaf Fix empty port separator and redundant port removal when credentials are present.
svn path=/trunk/netsurf/; revision=13108
2011-10-31 22:23:02 +00:00
Michael Drake
a4dc04e44a Test numbers before calling strncmp.
svn path=/trunk/netsurf/; revision=13107
2011-10-31 22:17:05 +00:00
Michael Drake
d64e09aef7 Make sure port's just 80, before removing in http case.
svn path=/trunk/netsurf/; revision=13106
2011-10-31 22:13:38 +00:00
Michael Drake
ea761e16e6 nsurl optimisation: Remove a load of branches into fewer.
svn path=/trunk/netsurf/; revision=13105
2011-10-31 22:02:40 +00:00
Michael Drake
3936e6df15 Remove some code that's not needed. Fix redundant port handling.
svn path=/trunk/netsurf/; revision=13104
2011-10-31 21:47:10 +00:00