summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* 9term: set TERM=dumb instead of TERM=9termRuss Cox2013-08-064-1/+13
| | | | | | | | | | | | | | | | Everyone seems to assume that TERM != dumb implies ANSI escape codes are okay. In fact, many people assume that unconditionally, but it is easier to argue back about TERM=dumb than TERM=9term. This applies to acme win too, because they share the code. Set termprog=9term or termprog=win for clients who need to know. R=rsc CC=r https://codereview.appspot.com/12532043
* acme: allow :6 in 5-line fileRuss Cox2013-07-311-0/+2
| | | | | R=rsc https://codereview.appspot.com/12162043
* cmd/devdraw: clear keyboard state on lost focus.Roger Peppe2013-07-171-0/+6
| | | | | | | See https://bitbucket.org/rsc/plan9port/issue/128/alt-button-sticks-in-acme-sometimes-after R=rsc https://codereview.appspot.com/11453043
* libregexp: update from Plan 9David du Colombier2013-07-025-24/+25
| | | | | R=rsc https://codereview.appspot.com/10690044
* devdraw: fix x11 inputRuss Cox2013-06-211-1/+1
| | | | | R=rsc https://codereview.appspot.com/10458043
* rc: avoid undefined CXi Wang2013-03-191-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are two bugs in pdec() on INT_MIN: * wrong output. `n = 1-n' should be `n = -1-n' when n is INT_MIN. * infinite loop. gcc optimizes `if(n>=0)' into `if(true)' because `-INT_MIN' (signed integer overflow) is undefined behavior in C, and gcc assumes the negation of a negative number must be positive. The resulting binary keeps printing '-' forever given INT_MIN. Try the simplified pdec.c below. $ gcc pdec.c $ ./a.out -2147483648 --214748364* $ gcc pdec.c -O2 $ ./a.out -2147483648 <infinite loop> $ gcc pdec.c -O2 -D__PATCH__ $ ./a.out -2147483648 -2147483648 === pdec.c === #include <stdio.h> #include <stdlib.h> #include <limits.h> #define io void void pchr(io *f, int c) { putchar(c); } void pdec(io *f, int n) { if(n<0){ #ifndef __PATCH__ n=-n; if(n>=0){ pchr(f, '-'); pdec(f, n); return; } /* n is two's complement minimum integer */ n = 1-n; #else if(n!=INT_MIN){ pchr(f, '-'); pdec(f, -n); return; } /* n is two's complement minimum integer */ n = -(INT_MIN+1); #endif pchr(f, '-'); pdec(f, n/10); pchr(f, n%10+'1'); return; } if(n>9) pdec(f, n/10); pchr(f, n%10+'0'); } int main(int argc, char **argv) { int n = atoi(argv[1]); pdec(NULL, n); putchar('\n'); } R=rsc CC=plan9port.codebot https://codereview.appspot.com/7241055
* libsec: avoid undefined CXi Wang2013-03-191-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc compiles `p + length < p' into 'length < 0' since pointer overflow is undefined behavior in C. This breaks the check against a large `length'. Use `length > pend - p' instead. There's no need to check `length < 0' since `length' is from length_decode() and should be non-negative. === Try the simplified code. void bar(void); void foo(unsigned char *p, int length) { if (p + length < p) bar(); } $ gcc -S -o - t.c -O2 ... foo: .LFB0: .cfi_startproc testl %esi, %esi js .L4 rep ret .L4: jmp bar .cfi_endproc Clearly `p' is not used at all. R=rsc CC=plan9port.codebot https://codereview.appspot.com/7231069
* xd: accept -S for 8-byte swapRuss Cox2013-03-111-0/+36
| | | | | R=rsc https://codereview.appspot.com/7565045
* devdraw: control+click = button 2, alt/shift+click = button 3Russ Cox2013-03-073-26/+111
| | | | | | | For single-button mouse users. R=rsc https://codereview.appspot.com/7620043
* devdraw: silence unused variable warningsRuss Cox2013-02-081-2/+6
| | | | | R=rsc https://codereview.appspot.com/7304064
* devdraw: disable XCopyArea optimizationRuss Cox2013-02-081-2/+5
| | | | | | | | | | | | Ubuntu Precise seems to have a buggy X server that sometimes fails at XCopyArea. Let devdraw do it itself. This will slow down remote X a little bit, but slow and correct is better than fast and broken. R=rsc https://codereview.appspot.com/7310069
* fontsrv: fix on X11 when X11H is not definedAlessandro Arzilli2013-01-301-1/+1
| | | | | | R=rsc CC=plan9port.codebot https://codereview.appspot.com/7228044
* libmach: fix crash in dwarfpc (misuse of realloc)Xi Wang2013-01-301-0/+1
| | | | | | R=rsc CC=plan9port.codebot https://codereview.appspot.com/7225059
* jpegdump: fix build and warningsDavid du Colombier2013-01-191-7/+8
| | | | | R=rsc https://codereview.appspot.com/7070070
* freq: fix crash with utf > 0xffff (thanks Andrey Mirtchovski)David du Colombier2013-01-041-2/+2
| | | | | R=rsc https://codereview.appspot.com/7029054
* venti/wrarena: fix arenapart breakageDavid du Colombier2013-01-031-3/+4
| | | | | R=rsc https://codereview.appspot.com/7027044
* fontsrv: only build when the pieces are thereRuss Cox2012-12-181-2/+2
|
* fontsrv: fix build on OpenBSD 5.2Christian Kellermann2012-12-113-2/+8
| | | | | | R=rsc CC=plan9port.codebot https://codereview.appspot.com/6850108
* auth/factotum: fix password prompt hang with secstoreDavid du Colombier2012-12-091-3/+3
| | | | | R=rsc http://codereview.appspot.com/6906057
* fontsrv: make single quotes look like quotesRuss Cox2012-12-031-3/+15
| | | | | R=rsc https://codereview.appspot.com/6864051
* fontsrv: scaled pjwRuss Cox2012-12-015-11/+369
| | | | | R=rsc https://codereview.appspot.com/6854130
* acme: retina scaling for scroll bars, buttonRuss Cox2012-11-262-26/+34
| | | | | R=rsc http://codereview.appspot.com/6854094
* samterm: retina scaling for scroll bars, bordersRuss Cox2012-11-263-14/+24
| | | | | R=rsc http://codereview.appspot.com/6844083
* 9term: adjust to dpi changesRuss Cox2012-11-261-15/+23
| | | | | R=rsc http://codereview.appspot.com/6847105
* devdraw: fake dpi calculation on MacRuss Cox2012-11-251-0/+8
| | | | | R=rsc http://codereview.appspot.com/6782115
* libframe: auto scale tick for retinaRuss Cox2012-11-252-8/+22
| | | | | R=rsc http://codereview.appspot.com/6850102
* devdraw: use %R not Fn-F3 for retina toggleRuss Cox2012-11-251-1/+1
| | | | | R=rsc http://codereview.appspot.com/6854093
* devdraw: add forcedpi toggled by Fn+F3 on MacRuss Cox2012-11-254-3/+20
| | | | | R=rsc http://codereview.appspot.com/6846104
* acme: set $samfile (same as $%) during executionMarius Eriksen2012-11-251-0/+1
| | | | | | R=rsc CC=plan9port.codebot http://codereview.appspot.com/6854092
* fontsrv: work around a few crashesRuss Cox2012-11-251-2/+6
| | | | | | | Probably not the right fix, but gets us going. R=rsc http://codereview.appspot.com/6782113
* devdraw: fix retina modeRuss Cox2012-11-251-1/+1
| | | | | R=rsc http://codereview.appspot.com/6847104
* libdraw: add scalesizeRuss Cox2012-11-251-0/+7
| | | | | R=rsc http://codereview.appspot.com/6855092
* devdraw, libdraw: add display->dpiRuss Cox2012-11-253-2/+37
| | | | | | | | Fixed at 100 right now, but the plan is to make it accurate and then use it. R=rsc http://codereview.appspot.com/6856091
* devdraw: restore compilation on OS X 10.6Shenghou Ma2012-11-251-0/+2
| | | | | | | Also add some ignored files to .hgignore R=rsc http://codereview.appspot.com/6842089
* acme: use threadspawnd to avoid changing "." of current processRuss Cox2012-10-221-29/+8
| | | | | R=rsc http://codereview.appspot.com/6736060
* libthread: add threadspawndRuss Cox2012-10-222-6/+16
| | | | | R=rsc http://codereview.appspot.com/6742064
* acme: add $acmeshell to control execution shellMarius Eriksen2012-10-213-2/+12
| | | | | | R=rsc CC=plan9port.codebot http://codereview.appspot.com/6614056
* fontsrv: x11 supportYuval Pavel Zholkover2012-10-214-3/+274
| | | | | | R=rsc, 0intro CC=plan9port.codebot http://codereview.appspot.com/6739047
* plumb.app: accept plumb:foo as alias for fooRob Kroeger2012-10-211-1/+16
| | | | | | R=rsc CC=plan9port.codebot http://codereview.appspot.com/5495046
* devdraw: map X11 dead_diaresis to double quoteCaio Oliveira2012-10-211-39/+42
| | | | | | R=rsc CC=plan9port.codebot http://codereview.appspot.com/6690049
* libmemdraw: fix int size bugErik Quanstrom2012-10-211-1/+2
| | | | | | R=rsc, quanstro CC=plan9port.codebot http://codereview.appspot.com/6657043
* silence more warningsRuss Cox2012-10-2115-299/+307
| | | | | R=rsc http://codereview.appspot.com/6744056
* fix clang warnings reported by Tuncer AyazRuss Cox2012-10-2123-620/+617
| | | | | R=rsc http://codereview.appspot.com/6744054
* lib9: fix Mac warningRuss Cox2012-10-201-1/+8
| | | | | R=rsc http://codereview.appspot.com/6749053
* fix gcc 4.7 warnings (thanks Tuncer Ayaz)Russ Cox2012-10-2014-40/+9
| | | | | R=rsc http://codereview.appspot.com/6744053
* libframe: use correct text color when paintingRob Kroeger2012-10-161-6/+12
| | | | | | R=rsc CC=plan9port.codebot http://codereview.appspot.com/6625065
* devdraw: MacBook retina supportRob Kroeger2012-10-161-8/+121
| | | | | | | | Enable with export devdrawretina=1 (everything will be smaller). R=rsc CC=plan9port.codebot http://codereview.appspot.com/6592072
* devdraw: prefer 24-bit over 15-bit or 16-bit.Russ Cox2012-10-071-6/+6
| | | | | | | Fixes remote X11 use via XQuartz 2.7.4. R=rsc http://codereview.appspot.com/6624058
* acme: correct writes of runes on auspicious byte boundariesErik Quanstrom2012-10-051-23/+34
| | | | | | R=rsc, r CC=plan9port.codebot http://codereview.appspot.com/6586067
* src/cmd: Add a repurposed import(4), called `9import', to the ports.Akshat Kumar2012-09-241-0/+239
| | | | | | | | | | | | The code is adapted from Plan 9's import(4); this allows us to speak that protocol. We don't currently support AAN (in the works) or TLS/SSL. Thanks to David for help with the man page, testing, and development. R=0intro, rsc CC=plan9port.codebot http://codereview.appspot.com/6458100