| Date: Fri, 19 Apr 2019 22:24:53 -0400
acme: do not trim spaces during Put
The commit that introduced this was pushed accidentally.
It is not a good idea to do this.
(It breaks programs that think that a clean window
means the body matches the on-disk file.)
Diffstat:
M src/cmd/acme/exec.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
--- |
| t@@ -192,7 +192,7 @@ execute(Text *t, uint aq0, uint aq1, int external, Text *argt)
f |= 2;
}
aa = getbytearg(argt, TRUE, TRUE, &a);
- if(a){
+ if(a){
if(strlen(a) > EVENTSIZE){ /* too big; too bad */
free(r);
free(aa);
t@@ -674,7 +674,7 @@ checksha1(char *name, File *f, Dir *d)
DigestState *h;
uchar out[20];
uchar *buf;
-
+
fd = open(name, OREAD);
if(fd < 0)
return;
t@@ -700,7 +700,7 @@ trimspaces(Rune *r, uint *np, int eof)
nonspace = 0;
w = 0;
- n = *np;
+ n = *np;
for(i=0; ib, q, r, n);
nn = n;
- if(w->autoindent)
+ // An attempt at automatically trimming trailing spaces.
+ // Breaks programs that inspect body file and think it will match on-disk file
+ // when window is clean. Should apply the changes to the actual window instead.
+ // Later.
+ if(0 && w->autoindent)
nn = trimspaces(r, &n, q+n==q1);
m = snprint(s, BUFSIZE+1, "%.*S", nn, r);
sha1((uchar*)s, m, nil, h); |