Commits


allow for ignore whitespaces when matching the hunk


gotwebd: avoid large allocation per fcgi record while here also wrap fcgi_send_response to make sure we don't end up trying to send a fcgi record bigger than allowed. ok tracey@


sync files from diff.git 3a15e1807a369c0a7827363eca22c9f1a8598d9c Rather than realloc in fixed-sized blocks, use the 1.5 * allocated scheme when growing the array. This produces fewer allocations and up to 3x speedup on large diffs. ok stsp@


tog: add n{G,g} key map to jump to line n like less(1) Available to all views; for example, 99g will navigate to line 99 in the file if in a blame view or the 99th commit if in a log view. Includes improvements suggested by naddy and stsp. ok naddy@


remove a tog blame TODO item which has been implemented


remove 'author' TODO items; these have been implemented


add two more TODO items


move use of sin_len out of gotwebd's parse.y ok tracey


rework got patch -c documentation ok op@


remove pointless repo_close with leaked error; found by florian with scan-build


fix two missing error checks in tog; found by florian with scan-build


tweak op@ log_debug output


fix logging of fcgi_send_response as originally intended by tracey@


gotwebd: handle partial writes fcgi_send_response can end up trying to send big amount of data, in particular when serving blobs. if a write failure occurs, gotwebd and httpd go out of sync and "bad stuff happens". debugged with and ok tracey@


gotwebd: simplify got_output_file_blob loop there's no need to distinguish between plain text blob and a binary one in the output, just send it chunk by chunk. ok tracey@


gotwebd: simplify isbinary


implement fcgi_gen_response on top of fcgi_gen_binary_response ok tracey@


gotwebd: fix double Content-Type (and the typo) ok tracey@


warn about the interaction between got patch -p and -c suggested by stsp@


got patch: add -c flag to apply at a specified commit it's useful for e.g. to apply old patches that weren't generated by `got diff' or git-diff(1) and so lacks the metadata needed for the 3-way merge. manpage improvements from and ok stsp@


simplify got_patch/apply_patch to call reverse_patch in one place once Current code is overly complex; it looks if the diff *might* use diff3 merge to postpone reverse_patch until we know for sure. Instead, just reverse_patch in apply_patch once we know if merge *is* used or not.


add a simple test for 'got diff' against CRLF files


sync files from diff.git ed9312f04bcebc7aee4f7e7d96d6ec467cb9bb66


`got patch' pledge early ok stsp@


got patch: error if patchfile isn't a regular file `got patch' cannot read patches from non-regular files for obvious reasons. However, it could crash in sendmsg because pledge doesn't allow to send file descriptors referring to directories. So, restrict `got patch' to operate on regular files only and fail otherwise. This still allows to read patches from symlinks since they're resolved at open(2) time and the file type check is performed after. There may be a marginal usefullness in reading patches from fifos, but the current code doesn't allow that anyway since got-read-patch needs a seekable file descriptor anyway. ok tracey@