summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSigrid <ftrvxmtrx@gmail.com>2021-02-04 10:57:37 +0100
committerSigrid <ftrvxmtrx@gmail.com>2021-02-04 10:57:37 +0100
commit4ec97f73ee2326209bc56730562e82f2e6fe2c0a (patch)
tree4d5392f7f6f3e63adc6c4d72721c0a62f011b86e
parente0bfd148e29346f9fb824ea0c6ac86b5870836ce (diff)
downloadplan9front-4ec97f73ee2326209bc56730562e82f2e6fe2c0a.tar.xz
libdraw: enter/eenter: fix ^W removing the text on the right side of the tick
-rw-r--r--sys/src/libdraw/eenter.c6
-rw-r--r--sys/src/libdraw/enter.c6
2 files changed, 8 insertions, 4 deletions
diff --git a/sys/src/libdraw/eenter.c b/sys/src/libdraw/eenter.c
index 0e08a5d70..dfe1fe3e9 100644
--- a/sys/src/libdraw/eenter.c
+++ b/sys/src/libdraw/eenter.c
@@ -152,13 +152,15 @@ nodraw:
continue;
}
if(k == Ketb){
+ l = tick;
while(tick > 0){
tick--;
if(tick == 0 ||
- strchr(" !\"#$%&'()*+,-./:;<=>?@`[\\]^{|}~", buf[tick-1]))
+ strchr(" !\"#$%&'()*+,-./:;<=>?@`[\\]^{|}~", buf[tick-1]))
break;
}
- buf[n = tick] = 0;
+ memmove(buf+tick, buf+l, n-l);
+ buf[n -= l-tick] = 0;
break;
}
if(k == Kbs){
diff --git a/sys/src/libdraw/enter.c b/sys/src/libdraw/enter.c
index cbcc52573..70742e087 100644
--- a/sys/src/libdraw/enter.c
+++ b/sys/src/libdraw/enter.c
@@ -160,13 +160,15 @@ nodraw:
continue;
}
if(k == Ketb){
+ l = tick;
while(tick > 0){
tick--;
if(tick == 0 ||
- strchr(" !\"#$%&'()*+,-./:;<=>?@`[\\]^{|}~", buf[tick-1]))
+ strchr(" !\"#$%&'()*+,-./:;<=>?@`[\\]^{|}~", buf[tick-1]))
break;
}
- buf[n = tick] = 0;
+ memmove(buf+tick, buf+l, n-l);
+ buf[n -= l-tick] = 0;
break;
}
if(k == Kbs){