Fix copy()
Copy was using directly the line numbers and incrementing them without calling nextln(). It also didn't worry about how line numbers are modified when we insert new lines.master
parent
504dde1373
commit
9781959581
11
ed.c
11
ed.c
|
@ -854,14 +854,19 @@ scroll(int num)
|
|||
static void
|
||||
copy(int where)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (!line1)
|
||||
error("incorrect address");
|
||||
curln = where;
|
||||
|
||||
for (i = line1; i <= line2; ++i)
|
||||
inject(gettxt(i), AFTER);
|
||||
while (line1 <= line2) {
|
||||
inject(gettxt(line1), AFTER);
|
||||
if (line2 >= curln)
|
||||
line2 = nextln(line2);
|
||||
line1 = nextln(line1);
|
||||
if (line1 >= curln)
|
||||
line1 = nextln(line1);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
Loading…
Reference in New Issue