| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
| |
BigInt is standard and widely available in browsers. We have no
reason to exclude it.
(BigFloat/BigDecimal are not, so we do not add them for now.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
isArray and proxy isArray can call each other indefinitely in a mutually
recursive loop.
Add a stack overflow check in the js_proxy_isArray function before calling
JS_isArray(ctx, s->target).
With ASAN the the poc.js from issue 178:
```
./qjs ./poc.js
InternalError: stack overflow
at isArray (native)
at <eval> (./poc.js:4)
```
Fix: https://github.com/bellard/quickjs/issues/178
|
| |
|
|
|
|
| |
No need for either of that now.
|
|
|
|
| |
The previous solution was ok, but it could leak an fd...
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Makes e.g. on-page anchor navigation near-instantaneous. Well, as
instantaneous as a fork can be. In any case, it's a lot faster
than loading the entire page anew.
This involves duplicating open resources (file descriptors, etc.),
which is not exactly trivial. For now we have a huge clone() procedure
that does an ok-ish job at it, but there remains a lot of room for
improvement.
e.g. cloning is still broken in some cases:
* As noted in the comments, TeeStream'ing the input stream for any
buffer is a horrible idea, as readout in the cloned buffer now
depends on the original buffer also reading from the stream. (So
e.g. if you clone, then kill the old buffer without waiting for
the new one to load, the new buffer gets stuck.)
* Timeouts/intervals are broken in cloned buffers. The timeout
module probably needs a redesign to fix this.
* If you clone before connect2, the cloned buffer gets stuck.
The previous solution was even worse (i.e. broken in more cases),
so this is still an improvement. For example, this fixes some issues
with mailcap handling (removes the "set the Content-Type of htmloutput
buffers to text/html" hack), does not reload all resources, does not
completely break if the buffer is cloned during loading, etc.
|
|
|
|
|
|
| |
padToWidth should be called for all input types in InputWithSize.
Also, they should be underlined by ua.css.
|
| |
|
| |
|
|
|
|
| |
8-bit colors are now supported
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
pandoc can only generate manpage tables from markdown tables, but the
markdown pipe table syntax is horrible. So instead of rewriting our markdown
documentation to use that syntax, just programmatically rewrite it.
|
|
|
|
| |
still needs some work
|
|
|
|
|
|
|
|
| |
* Bare strings are now allowed when specifying config options
through -o.
* Fix a bug where options specified with -o would be disregarded
unless a newline was included.
* (Also, add a TOML stringifier routine for debugging.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Say we have a table
<TABLE>
<TR>
<TD WIDTH=20>a</TD>
</TR>
<TR>
<TD>aklsdfjaskdfjkl</TD>
</TR>
</TABLE>
This should be 20 pixels wide, not as wide as the second row.
Also, larger specified widths now always override previous widths
specified on the column. (I think this was a regression, but the
previous solution to this problem was an ugly hack.)
|
|
|
|
|
|
|
|
|
| |
px now converts to float64 before converting back to a layout unit
when calculating percentage values.
This should reduce overflow crashes somewhat.
(The real solution would be to not crash on overflow, but that's a
little more difficult problem to solve.)
|
| |
|
|
|
|
| |
it's better than nothing, maybe?
|
|
|
|
|
|
|
| |
We did this to please the compiler at one point, but it seems to be
fine to remove now.
(Also, use withValue when possible.)
|
| |
|
|
|
|
| |
works
|
| |
|
|
|
|
|
|
|
|
|
| |
* Dirlist is now unified across ftp and file loaders.
It's basically a copycat of w3m's FTP dirlist, because I like how
it looks.
* We now hack around the cURL FTP path problem by always prepending a
slash to the path. This is probably closer aligned with expectations
than the default behavior.
|
| |
|
|
|
|
| |
avoid e.g. # being interpreted as a fragment
|
|
|
|
| |
and with that, resolve the unknown input type issue
|
| |
|
|
|
|
|
|
|
|
| |
* Fix an issue with Collection cache invalidation (we must invalidate
collections of the parent node on insertion, so that it triggers
a refresh).
* Remove circular reference of document.document, now we use a function
instead.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
works, sort of
still needs some work:
* better dirlist, ideally make it look like file dirlist (or make
file look like ftp dirlist. well, anyway, they should look the same)
* absolute paths? (for now you have to append an extra slash to the
path beginning)
* ssh keys for sftp? (actually I haven't even tested sftp yet...)
|
| |
|
|
|
|
|
| |
The editor box never uses the last cell. However, it should still
overwrite it.
|
|
|
|
| |
lineedit no longer needs these
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The old lineedit system worked quite well in the original synchronous
model. However, because it needs access to the terminal, it has been
subtly broken ever since buffer updates are allowed while the user
is in line edit mode.
This is best observed in incremental search, where searching for a
bgcolor'ed text would result in the bgcolor bleeding into the line
editor box.
The new version is much simpler, and therefore less optimized. But
it can still take advantage of output optimization in the terminal
controller, and it is free of races (because we simply query the
current state from the pager and feed it into the main output grid).
|
| |
|
| |
|
|
|
|
| |
not that this code path is ever executed
|
|
|
|
|
|
|
|
| |
* quote substituted URLs, mime types and named attributes too
* change quote state: now we use a stack of quote states, new
states are pushed/popped when a process substitution is encountered
* fix named attribute state (it was incomplete)
* remove superfluous tolower statements
|
| |
|
| |
|
| |
|