SMOLNET PORTAL home about changes
ifix bug in paste at point - gramscii - A simple editor for ASCII box-and-arrow charts	Err	bitreich.org	70
1Log	/scm/gramscii/log.gph	bitreich.org	70
1Files	/scm/gramscii/files.gph	bitreich.org	70
1Refs	/scm/gramscii/refs.gph	bitreich.org	70
1Tags	/scm/gramscii/tag	bitreich.org	70
1README	/scm/gramscii/file/README.md.gph	bitreich.org	70
1LICENSE	/scm/gramscii/file/COPYING.gph	bitreich.org	70
i---	Err	bitreich.org	70
1commit 6da2f3f89afda08eeba385da1c36414154113d47	/scm/gramscii/commit/6da2f3f89afda08eeba385da1c36414154113d47.gph	bitreich.org	70
1parent eebc645dee0d15871d6cc46f156d424cd916b191	/scm/gramscii/commit/eebc645dee0d15871d6cc46f156d424cd916b191.gph	bitreich.org	70
hAuthor: KatolaZ <katolaz@freaknet.org>	URL:mailto:katolaz@freaknet.org	bitreich.org	70
iDate:   Tue, 30 Jul 2019 16:25:49 +0100	Err	bitreich.org	70
i	Err	bitreich.org	70
ifix bug in paste at point	Err	bitreich.org	70
i	Err	bitreich.org	70
iDiffstat:	Err	bitreich.org	70
i  M lineset.c                           |      15 ++++++++++++---	Err	bitreich.org	70
i	Err	bitreich.org	70
i1 file changed, 12 insertions(+), 3 deletions(-)	Err	bitreich.org	70
i---	Err	bitreich.org	70
1diff --git a/lineset.c b/lineset.c	/scm/gramscii/file/lineset.c.gph	bitreich.org	70
i@@ -102,16 +102,25 @@ void yank_region(int x1, int y1, int x2, int y2){	Err	bitreich.org	70
i 	Err	bitreich.org	70
i 	Err	bitreich.org	70
i void paste_region(int x1, int y1){	Err	bitreich.org	70
i-        int i, curlen;	Err	bitreich.org	70
i+        int i, curlen, pastelen;	Err	bitreich.org	70
i 	Err	bitreich.org	70
i         i = y1;	Err	bitreich.org	70
i         while( i < HEIGHT && i < y1 + cutbuf.num){	Err	bitreich.org	70
i-                memcpy(screen.l[i].s + x1, cutbuf.l[i-y1].s, strlen(cutbuf.l[i-y1].s));	Err	bitreich.org	70
i+                pastelen = strlen(cutbuf.l[i-y1].s);	Err	bitreich.org	70
i                 curlen = strlen(screen.l[i].s); 	Err	bitreich.org	70
i+                memcpy(screen.l[i].s + x1, cutbuf.l[i-y1].s, pastelen);	Err	bitreich.org	70
i                 if (curlen <= x1)	Err	bitreich.org	70
i                         /* double-check this line below */	Err	bitreich.org	70
i-                        pad_line_to_length(screen.l[i].s+curlen, x1 - curlen);	Err	bitreich.org	70
i+                        pad_line_to_length(screen.l[i].s + curlen, x1 - curlen);	Err	bitreich.org	70
i+                if (curlen <= x1 + pastelen)	Err	bitreich.org	70
i+                        screen.l[i].s[x1 + pastelen] = '\0';	Err	bitreich.org	70
i+                	Err	bitreich.org	70
i+                screen.l[i].lst = strlen(screen.l[i].s) - 1;	Err	bitreich.org	70
i+#ifdef DEBUG 	Err	bitreich.org	70
i+                fprintf(stderr, "%d.lst: %d\n", i, screen.l[i].lst);	Err	bitreich.org	70
i+#endif	Err	bitreich.org	70
i                 i += 1;	Err	bitreich.org	70
i                 modified = 1;	Err	bitreich.org	70
i         }	Err	bitreich.org	70
i+        redraw();	Err	bitreich.org	70
i }	Err	bitreich.org	70
.
Response: text/plain
Original URLgopher://bitreich.org/0/scm/gramscii/commit/6da2f3f89afda...
Content-Typetext/plain; charset=utf-8