about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
...
* version: print error message on a single linebptato2024-03-141-4/+3
| | | | it's easier to see that it's a single message this way
* client: check if container was found before deleting itbptato2024-03-141-2/+2
| | | | | | Containers may also be deleted without a connection. More specifically: by mailcap, when it launches an external process without opening the output in a buffer.
* pager: unregister containers properly when headers are pendingbptato2024-03-143-14/+33
| | | | | It can happen that a container is deleted before it acquires a buffer process; add it to the `unreg' array in this case too.
* loader: handle connections where pid/key does not matchbptato2024-03-141-1/+8
| | | | | This can easily happen if a buffer process is killed and/or a new process takes its ID.
* cgi: fix broken pipe handlingbptato2024-03-141-1/+8
| | | | | if the socket is closed before the loader could send all header data, we must destroy the parser to avoid sending a result twice.
* Move around some modulesbptato2024-03-1421-96/+88
| | | | | | | | * extern -> gone, runproc absorbed by pager, others moved into io/ * display -> local/ (where else would we display?) * xhr -> html/ * move out WindowAttributes from term, so we don't depend on local from server
* pager: add "open in editor" keybinding (sE)bptato2024-03-149-77/+103
| | | | | | only for source for now, rendered document is a bit more complicated (also, get rid of useless extern/editor module)
* loader: only trap SIGTERMbptato2024-03-141-1/+1
| | | | SIGINT is trapped (well, ignored) by forkserver already.
* man: misc improvementsbptato2024-03-142-62/+74
| | | | | | | * do not use query string for arguments * accept symlinks as man binaries * improve error message reporting * run all regexes on the original line
* loader: fix crash on malformed CGI headersbptato2024-03-142-3/+2
| | | | | Setting istream to nil was preventing finishCycle from unregistering & closing it.
* twtstr: fix deleteChars, do not remove space in replaceControlsbptato2024-03-142-11/+7
|
* doc: revert capitalization changebptato2024-03-141-1/+1
| | | | it looks weird
* pager: use loadinfo for redirection message, not alertbptato2024-03-131-1/+2
| | | | | alert has a tendency to pile up redirection infos. This is annoying and may obscure the "too many redirections" error message.
* twtstr: simplify control char procsbptato2024-03-131-24/+7
|
* layout: remove word-spacingbptato2024-03-131-4/+1
| | | | this was a bad idea
* Prevent UB on memcpy and floating point conversionsCharlie Gordon2024-03-135-18/+26
| | | | | | | - add `memcpy_no_ub` that accepts null pointers for 0 count - prevent 0 length allocation in `js_worker_postMessage` - use safer test for `int` value in `JS_NewFloat64`, `JS_ToArrayLengthFree` and `js_typed_array_indexOf`
* Improve Date.parseCharlie Gordon2024-03-131-31/+106
| | | | | | | | | | - accept many more alternative date/time formats - add test cases in tests/test_builtin.js - match month and timezone names case insensitively - accept AM and PM markers - recognize US timezone names - skip parenthesized stuff - fix almost all v8 test cases
* rudimentary support for <video>, <audio>bptato2024-03-137-10/+66
| | | | | we just treat them as img tags. lazy, but works suprisingly well -- so long as the server sends us a Content-Type, anyway.
* man: rewrite in Nimbptato2024-03-1310-312/+349
| | | | | | | | | | | | Depending on Perl just for this is silly. Now we use libregexp for filtering basically the same things as w3mman2html did. This required another patch to QuickJS to avoid pulling in the entire JS engine, but in return, we can now run regexes without a dummy JS context global variable. Also, man.nim now tries to find a man command on the system even if it's not in /usr/bin/man.
* loader: fix nil deref in parseHeadersbptato2024-03-131-1/+1
|
* client: fix blocking reads on container connectionbptato2024-03-125-72/+123
| | | | | | | | | | | | | | | | Sometimes, headers take a while to reach us even after the result has been sent. e.g. echo 'Cha-Control: Connected' sleep 5 echo 'Cha-Control: ControlDone' ^ this froze the UI for 5 seconds, that's certainly not what we want. Since we don't have a proper buffered reader yet, and I don't want to write another disgusting hack like BufStream, we just use a state machine to figure out how much we can read. Sounds bad, but in practice it works just fine since loader's response patterns are very simple.
* mancha: only set man as section without other parametersbptato2024-03-121-1/+2
| | | | e.g. `man 2 -k blah' should not override the section
* generated by cgit-pink 1.4.1-2-gfad0 (git 2.36.2.497.gbbea4dcf42) at 2025-07-24 10:17:20 +0000