Commit Graph

13855 Commits

Author SHA1 Message Date
Vincent Sanders
cfdaf181a2 cleanup browser window message handling
separate out ready and done message processing to make the code
 more readable.

remove checking of content status as content_close() handles that
 itself.
2019-07-10 17:08:29 +01:00
Vincent Sanders
c2fa6af0ff make content close check the content status itself
make content handler open and close return error status
2019-07-10 16:42:52 +01:00
Vincent Sanders
f46b77160a ensure monkey farmer copes with recv returnint EAGAIN 2019-07-06 10:08:10 +01:00
Vincent Sanders
ccf336bb4a make monkey driver and farmer python files pylint and pep8 clean 2019-07-04 22:44:58 +01:00
Vincent Sanders
e01bbee405 fix monkey testing setting of options to add necessary prefix 2019-07-02 11:29:54 +01:00
Vincent Sanders
1ae0ee21ee add isFinite to global context 2019-07-01 23:26:11 +01:00
Daniel Silverstone
43f8e77df7 css/utils.c: Fix vw/vh handling in len2pt
We were using integer multiplication rather than fixed-point
multiplication when calculating point sizes relative to the viewport.

This fixes that.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-30 11:27:58 +01:00
Michael Forney
6a53b447e5 Declare global variables as extern in headers
Otherwise, each source file that includes the header will create a
new definition, which are usually merged together by the linker.

Multiple definitions of an object is not allowed in ISO C.
2019-06-30 09:52:06 +01:00
Michael Drake
1c3ce67c62 HTML: Viewport width/height in length context are fixed point. 2019-06-29 21:59:15 +01:00
Vincent Sanders
ca2cbac232 fix freetype pkg-config usage in atari frontend 2019-06-29 18:01:22 +01:00
Vincent Sanders
4368c4c042 attempt to make monkeyfarmer process exit detection more reliable 2019-06-27 13:16:51 +01:00
Vincent Sanders
a57940a468 fix atari STRIP makefile target to not have a spurious close bracket 2019-06-25 16:59:22 +01:00
Vincent Sanders
8b31e18ad6 stop the atari toolchain from matching the cstrip binary for the strip one 2019-06-25 16:56:06 +01:00
Vincent Sanders
dc9762fef3 revert 8265b8b66f as ssize_t is not available everywhere 2019-06-25 08:49:29 +01:00
Daniel Silverstone
8265b8b66f Duktape: Probably should use ssize_t
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-15 21:34:47 +01:00
Daniel Silverstone
84b8e7dfa1 Duktape: Hopefully silence issue with %lld
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-15 21:33:59 +01:00
Daniel Silverstone
e14a6598be monkey_driver.py: Allow for no wrapper to be passed
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-15 21:24:35 +01:00
Daniel Silverstone
659c9161ee llcache: Abort cleanly if called back during shutdown
In order to help us debug shutting down with active fetches, this
will abort the process cleanly if we get a callback to an "active"
llcache handle after the abort process has actually killed them
all.  This can happen with deferred fetcher aborts in the cURL
fetcher.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-15 21:13:09 +01:00
Daniel Silverstone
09fa61eb73 hlcache.c: Clean up LOADING contents during finalise
During the process of finalising the hlcache, there won't be
any more fetching going on.  As such, we can abort, error, and
then destroy any contents still in the process of loading.  This
should reduce our leaks during shutdown.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-15 21:12:58 +01:00
Daniel Silverstone
1d5a024a68 Sleepy JS test, handy to alt+f4 during load to check shutdown
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-15 21:09:49 +01:00
Daniel Silverstone
5c0eee43e2 Monkey: Support a -w argument to the monkey_driver.py
In order to better support valgrind and friends, add -w to
the monkey driver.  You can use it as:

monkey_driver.py ...normalargs... -w 'valgrind -v --track-origins=yes'

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-15 20:01:08 +01:00
Vincent Sanders
8b6f590aaa prevent out of bounds access when checking IDNA host label 2019-06-13 17:02:08 +01:00
Vincent Sanders
1951c0f809 allow repeat loops to specify values and navigation to use them 2019-06-12 23:55:54 +01:00
Vincent Sanders
c90bd806a6 make the timer-start and timer-restart action name the timer in the same way 2019-06-12 22:59:40 +01:00
John-Mark Bell
c1dc4e61bd LLCache: validate max-age before use 2019-06-10 21:36:52 +00:00
John-Mark Bell
23698aecf8 HTTP: expose validity of max-age in Cache-Control
As max-age is an optional directive, provide a means to determine
if it is present and correct.
2019-06-10 21:35:36 +00:00
John-Mark Bell
047c82cfce LLCache: use Cache-Control parser 2019-06-10 21:02:26 +00:00
John-Mark Bell
04b790643b HTTP: add minimal parser for Cache-Control 2019-06-10 21:02:19 +00:00
Vincent Sanders
9893b05b08 use jmb suggested fix to cache-control header parse error 2019-06-10 21:58:46 +01:00
Vincent Sanders
e598dcd139 fix parsing of invalid syntax max-age value Cache-control header 2019-06-10 20:53:12 +01:00
Chris Young
24590a1145 Check callback memory is allocated before trying to use it. 2019-06-09 20:30:46 +01:00
Chris Young
93494790f3 Fix memory leak in Amiga frontend 2019-06-09 20:17:47 +01:00
Chris Young
7314651b95 NULL drawhandle after free 2019-06-09 19:29:56 +01:00
Daniel Silverstone
e82107a296 Window.bnd: Suppress some unnecessary stack frame dumps
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-09 15:59:05 +01:00
Daniel Silverstone
03624bcf7a browser.c: Don't require > 0 chars in logging
Sometimes JavaScript chooses to log an empty string.  We should
honour that by requiring msg be a valid empty string.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-09 15:20:17 +01:00
Daniel Silverstone
c5c8a49276 Window.bnd: Expose isNan
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-09 15:20:01 +01:00
Daniel Silverstone
04cf2fe588 Window.bnd: Do not remove in-train callbacks
Sometimes callbacks may be cancelled from within themselves.  In
that case we need to simply ensure that should the callback be
wanted to repeat, we instead stop that so that once the callback
is completed we do not attempt to reschedule something which had
already been deleted.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-09 11:04:15 +01:00
Vincent Sanders
dddc5eac94 Update schedulers return codes
The GTK and monkey frontends schedulers now return NSERROR_NOT_FOUND
 when a caller is using a negative schedule time to remove a callback.
2019-06-08 13:33:16 +01:00
Vincent Sanders
c74c8332ac allow monkey tests to stop navigation 2019-06-06 17:17:27 +01:00
Vincent Sanders
eeeca4b712 add ability to stop a navigation in monkey frontend 2019-06-06 17:17:27 +01:00
Vincent Sanders
4be18fcf47 detect monkey exit rather than waiting forever for a defunct process 2019-06-06 17:17:27 +01:00
Vincent Sanders
f2000ae60e improve stdout print formatting 2019-06-06 17:17:27 +01:00
Daniel Silverstone
64ee8e1b00 html.c: Correct ordering for reformat time
Fix a minor bug where we'd likely never end up reformatting.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-05 22:59:49 +01:00
Vincent Sanders
27ee92c872 extend the monkey test tooling to cope with ssl certificate windows 2019-06-05 20:58:40 +01:00
Daniel Silverstone
3d80e825e1 content/fetchers/curl.c: Defer fetch start if inside cURL
In order to cope better with modern cURL which prevents making
cURL calls when inside a callback from within cURL, defer fetch
start when we are processing in `fetch_curl_data()`.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-05 19:51:47 +01:00
Daniel Silverstone
41608a73c0 monkey-see-monkey-do: Also restore stdout/stderr when success
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-04 21:50:43 +01:00
Daniel Silverstone
c07b2edd77 Document.bnd: createDocumentFragment() unref fragment
The pushed fragment node holds the reference, so unref it in
the end of createDocumentFragment()

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-01 13:59:36 +01:00
Daniel Silverstone
9c32564085 html_script.c: html_script_exec() reqacquire script ptr
Since executing a script can cause more scripts to be appended
to the script array, and that can cause a reallocation which might
move the script array, reacquire the script pointer after running
the script so that we don't wander off into the reeds.

Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2019-06-01 13:25:14 +01:00
Vincent Sanders
a6de56583c Improve javascript unimplemented bnding documentation generation 2019-05-31 19:40:10 +01:00
Vincent Sanders
19de453ad5 Fix dump choices test data to align with altered logging levels 2019-05-31 18:56:14 +01:00