Commit Briefs

Aram Hăvărneanu

CONTRIBUTORS: add Aram Hăvărneanu

LGTM=rsc R=rsc CC=plan9port-dev https://codereview.appspot.com/119500043


Aram Hăvărneanu

g: search in *.s files

LGTM=rsc R=rsc CC=plan9port-dev https://codereview.appspot.com/115100043


Russ Cox

mc: use $termprog to identify 9term

TBR=rsc https://codereview.appspot.com/112890043


David du Colombier

upas: fix nil pointer dereference

R=rsc https://codereview.appspot.com/92650043


Russ Cox

upas/common: rename aux to auxx

TBR=rsc https://codereview.appspot.com/107760043


Russ Cox

build: rename " and "" to quote1 and quote2 for hg

They'll be copied back during installation but then hg doesn't have to create those files on systems that have trouble with them. TBR=rsc https://codereview.appspot.com/105800043


Russ Cox

acme: fix bufread crash due to typing-point scrolling

Acme tracks the most recent typing insertion point and the home and end keys stop there on their way up to the top or down to the bottom of the file. That point should be iq1, and it should be adjusted properly so that it's always between 0 and t->file->b.nc inclusive. (This is all code from an external contributor, years old at this point but new since Plan 9.) Somehow, sometimes iq1 ends up a little beyond b.nc, and when passed to textbacknl it crashes acme in bufread. I can't see how that can happen but if it does, avoid the crash. It's tempting to pull the insertion point code out entirely but this is a little less invasive and should fix things for now. TBR=rsc https://codereview.appspot.com/107730043


Russ Cox

acme: increase timer resolution to 10ms

We ran for a long time with 10ms kernel resolution, so 10ms user space resolution here should be fine. Some systems actually provide 1ms sleeps, which makes this polling use a bit more cpu than we'd like. Since the timers are for user-visible things, 10ms should still be far from noticeable. Reduces acme's cpu usage on Macs when plumber is missing (and plumbproc is sleeping waiting for it to appear). LGTM=aram, r R=r, aram https://codereview.appspot.com/99570043


Russ Cox

undo CL 69070045 / 8539a916d98a

This breaks ^C in win windows, as expected. People use ^C, win expects and handles ^C, so I don't think we can just take it away. I've noticed that it is broken but assumed my ssh was screwed up. If you want to make WindowsKey+C,X,V do the operations, by analogy with command+C,X,V on Mac, that's fine with me. ««« original CL description acme: copy/cut/paste with ctl+c,x,v LGTM=rsc R=rsc CC=plan9port.codebot https://codereview.appspot.com/69070045 »»» TBR=rsc CC=burns.ethan, r https://codereview.appspot.com/96410045


David du Colombier

upas: fix warnings

smtp.c:232: warning: comparison with string literal results in unspecified behavior smtp.c:244: warning: comparison with string literal results in unspecified behavior marshal.c:1179: warning: variable ‘err’ set but not used LGTM=rsc R=rsc https://codereview.appspot.com/93290043


David du Colombier

libndb: add AUTOLIB(resolv)

LGTM=rsc R=rsc https://codereview.appspot.com/97370043


Russ Cox

acme: fix two flush bugs in new log file

TBR=rsc https://codereview.appspot.com/95010048


Russ Cox

acme: add log file in acme root directory

Reading /mnt/acme/log reports a log of window create, put, and delete events, as they happen. It blocks until the next event is available. Example log output: 8 new /Users/rsc/foo.go 8 put /Users/rsc/foo.go 8 del /Users/rsc/foo.go This lets acme-aware programs react to file writes, for example compiling code, running a test, or updating an import block. TBR=r R=r https://codereview.appspot.com/89560044


Russ Cox

acme: add comment for aligned writes

TBR=r https://codereview.appspot.com/89510044


Russ Cox

acme: use buffered i/o to write file

Bakul Shah has observed corrupted files being written when acme writes over osxfuse to sshfs to a remote file system. In one example we examined, acme is writing an 0xf03-byte file in two system calls, first an 0x806-byte write and then a 0x6fd-byte write. (0x806 is BUFSIZE/sizeof(Rune); this file has no multibyte UTF-8.) What actually ends up happening is that an 0x806-byte file is written: 0x000-0x6fd contains what should be 0x806-0xf03 0x6fd-0x7fa contains zeros 0x7fa-0x806 contains what should be 0x7fa-0x806 (correct!) The theory is that fuse or sshfs or perhaps the remote file server is mishandling the unaligned writes. acme does not seem to be at fault. Using bio here will make the writes align to 8K boundaries, avoiding the bugs in whatever underlying piece is broken. TBR=r https://codereview.appspot.com/89550043