| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
| |
|
| |
|
|
|
|
| |
Lack of cbool is a pain. I'm sticking with JS_BOOL for now.
|
| |
|
| |
|
|
|
|
|
| |
Also removes the computation of underflow on the end margin for blocks;
as far as I can tell, this was never used.
|
|
|
|
|
|
|
|
|
|
| |
Well, it's not much prettier... but it will be useful for keep-alive.
(Hopefully.)
Also, loader could now be locked down capsicum/pledge/seccomp, but I'm
not sure if there's a point. The biggest potential threat it faces is
cross-contamination of handles, and no amount of syscall filtering is
going to protect against that.
|
|
|
|
|
|
|
|
|
| |
I've removed the SIGINT trap because the fork server is now in a
separate process group than the main process anyway. We'll see if this
actually works...
Also realized we weren't closing the fork server's control stream on
fork; now we do.
|
|
|
|
|
|
|
|
|
|
| |
Instead of trying to track child pids (which is wrong - a child may die
at any time for whatever reason, so we could have ended up murdering
some random process that took its place...), just setsid on forkserver
start and send SIGTERM to the entire process group on termination.
Also removed the loader pid from the FileLoader object, as it is no
longer useful.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This time, I've also ported over the consistency check to prevent some
ownership bugs.
Unfortunately, the check is very limited, and it is still possible to
double-free or leak JSValues. I think it would be possible to make
coverage 100%, but only with ARC...
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Pros: basic display on pages that depend on grid being implemented to
display anything at all.
Cons: breaks pages that have a fallback layout for UAs that can't do
grid. (In practice, such pages must be rare - CSS for layout is painful
enough that nobody in their right mind will spend time on implementing
a fallback layout for the same DOM.)
|
|
|
|
|
|
| |
It made cached layout inconsistent with uncached layout.
(I'm not sure if this is actually observable; either way, it's a bad
idea to rely on this.)
|
|
|
|
| |
it worked somehow, but it's wrong...
|
|
|
|
|
|
|
|
|
| |
Previously, the code just called put and unset on handles in situations
where it seemed necessary, but this has become unmanageable.
Now, put is called as soon as a handle receives its stream, and unset is
called whenever said handle (and thereby its stream) is closed.
This fixes a bug in loadCGI with an rbtCache body.
|
|
|
|
|
|
|
| |
* optimize toJS set
* change defineProperty wrappers to return an enum
If we're going to wrap defineProperty, then let's do it properly.
|
|
|
|
|
|
| |
I've also refactored the code a bit, so it's both easier to understand
and more efficient. (In particular, BlockLayoutState no longer has to
store marginBottom.)
|
|
|
|
| |
+ simplify argv -> seq conversion
|
|
|
|
|
| |
In theory, it is possible for rename to succeed before the buffers are
flushed, and then we lose data.
|
|
|
|
|
|
|
| |
It's simpler and more efficient to handle this in the DOM.
(The interface was also confusing/broken in that it only really accepted
one htmldda class.)
|
| |
|
|
|
|
|
|
| |
I've also removed the rsBeforeStatus error check from iclose. I'm not
sure if it's still needed at all, but if it is, then it was implemented
in the wrong place.
|
| |
|
|
|
|
|
| |
withCredentials doesn't really do anything yet, but will be needed if
we do cors fetch/XHR
|
|
|
|
| |
Now only WebFile can have an fd.
|
|
|
|
|
| |
Apparently it's a bug in the optimizer.
TODO: reduce & report it
|
| |
|
|
|
|
|
|
| |
Achieved by generating an anonymous flow root child for the contents and
positioning that. (Not the cell contents directly - that wouldn't work
because of inline child boxes.)
|
| |
|
| |
|
|
|
|
|
|
|
| |
We sent the two packets at the same time anyway.
(Status could have been sent earlier in some cases, but there is no
point - it's unused until after all headers have been received.)
|
|
|
|
|
| |
This adds a runtime check to packet readers to ensure that all fds have
been read, and switches to seqs for packet writers.
|
|
|
|
|
| |
Conflating buffered streams with non-buffered streams is generally a
bad idea.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now we just pass down the value of n and check errno, plus
readDataLoop/writeDataLoop returns a bool indicating whether it failed.
For now this seems to work OK, but maybe I'll add a better abstraction
in the future.
EOFError is still used for handling failed packets; this is brittle,
and should be replaced once we have a proper buffering mechanism for
them. (That will also let us kill BufStream.)
Unrelated: this also fixes a bug in buffer with cacheId.
|
| |
|
|
|
|
|
|
|
|
| |
and throw out the conflict resolution logic; it doesn't matter much if
we override an old cache file, as it should have been cleaned up anyway.
I've also replaced dirExists + createDir with a single mkdir at call
sites. If it fails, so be it.
|
| |
|
| |
|
| |
|
|
|
|
| |
not standard-compliant, but better than nothing
|
| |
|
| |
|
|
|
|
| |
it looks ugly
|
| |
|